Convertir url a minúscula usando Apache HTTP

Puede que su sitio responda a urls que contengan carácteres en mayúsculas y minúsculas (una misma página responde a las urls: misitio.com/Mi-Url, misitio.com/mi-url), teniendo en cuenta parámetros SEO esto no es bueno ya que los buscadores distinguen mayúsculas de minúsculas por tanto tendrías más de una página indexada con el mismo contenido. Un truco que puedes usar es convertir todas las urls a minúsculas, para ello:

Ponga en el server config

Centos / Fedora / RHEL: /etc/httpd/conf/httpd.conf
Debian / Ubuntu: /etc/apache2/apache2.conf

RewriteEngine On
RewriteMap lowercase int:tolower
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{REQUEST_URI} !.(css|js|php|[jm]pe?g|png|[yx]ml|
    json|gif|ico|pdf|swf|html|flv|doc|pps|rar|zip|eps|
    odt|wmv|avi|tar(.(bz|gz))?|gz)$
RewriteCond %{REQUEST_URI} ^.*[A-Z].*$
RewriteCond %{HTTP_HOST} ^(.*)$
RewriteRule ^(.*)$ http://%1${lowercase:$1} [L]

Nótese que la primera condición excluye todas las url que contengan parámetros y la segunda todas las url que hacen peticiones a imágenes, pdf, doc, flash, otros

Luego en cada virtual host
RewriteEngine On
RewriteOptions Inherit

Lecturas recomendadas

2 comentarios en “Convertir url a minúscula usando Apache HTTP”

    1. Si el cambio es hecho a nivel de servidor o sea en el fichero de configuración del apache entonces debes reiniciar el servidor, tambien puedes hacerlo a nivel de directorio o sea en el .htacces de tu proyecto

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.