A veces nos interesa implementar un sistema de redirección de forma que peticiones de URLs tipo http://www.domain.com/Category se traduzca a la URL del servlet correcta.

Se consigue con el módulo mod_rewrite de Apache. La configuración se puede hacer por VirtualHost de forma independiente (directiva RewriteEngine On) y establecer las condiciones sobre las que se aplica una regla.

En el ejemplo que se muestra a continuación se aplica la directiva si la URL no es un fichero existente ni un directorio existente, y si no es una petición que empiece por /cat ni por /common. Para las demás peticiones, se traduce la URL a la dirección del servlet. La R del final indica redirección (fuerza la redirección del navegador), en vez de la reescritura interna (tipo Proxy).

#**CATCATCATCATCAT**
<VirtualHost *:80>
ServerAdmin admin@catcatcatcatcat.com
DocumentRoot /opt/apache/2.0.52/htdocs/cat
ServerName www.catcatcatcatcat.com
ErrorLog “|/opt/apache/2.0.52/bin/rotatelogs /opt/apache/2.0.52/logs/cat/error_log 604800”
CustomLog “|/opt/apache/2.0.52/bin/rotatelogs /opt/apache/2.0.52/logs/cat/access_log 604800” common
Esta dirección de correo electrónico está protegida contra los robots de spam, necesitas tener Javascript activado para poder verla
<!–
document.write( ‘</’ );
document.write( ‘span>’ );
//–>

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !^/cat/.*$
RewriteCond %{REQUEST_FILENAME} !^/common/.*$
RewriteRule ^/(.*)$ /cat/servlet/xmlxsl/home_pkg.initialPage?p_conditionName=$1 [R]