Cómo realizar la redirección interna con mod_rewrite en Apache

Cómo realizar la redirección interna con mod_rewrite en Apache

En este artículo y en el siguiente explicaremos cómo usar mod_rewrite, para mapear ciertas solicitudes HTTP a otras páginas en un sitio web, oa una URL externa.

En otras palabras, esta bien-El módulo Apache conocido le permitirá redirigir una URL a otra, que ilustraremos a través de ejemplos prácticos.

Lectura sugerida: 5 consejos para mejorar el rendimiento de su servidor web Apache

NOTA. Los ejemplos siguientes asumen que está al menos algo familiarizado con las Expresiones regulares compatibles con Perl. ( PCRE. . Dado que ese tema está fuera del alcance de este artículo, consulte los documentos de Perl 5 versión 24.0 para obtener más detalles sobre PCRE.

Antes de continuar, asegúrese de que el módulo de reescritura esté cargado. Aunque este es el comportamiento predeterminado en CentOS. y distribuciones similares, en Debian. y derivados deberá cargarlo manualmente de la siguiente manera:

# a2enmod rewrite

Configuración de Apache para usar el módulo mod_rewrite

Para simplificar, usemos el sitio predeterminado en un cuadro CentOS 7. ( IP 192.168.0.100. para explicar cómo use mod_rewrite. ( DocumentRoot. /var/www/html. archivo de configuración: /etc/httpd/conf/httpd.conf. .

freestar.config.enabled_slots.push

Para que Apache use este módulo, agregue la siguiente línea archivo de configuración:

RewriteEngine en

Es importante tener en cuenta que los hosts virtuales no heredarán esta configuración en el mismo cuadro.

Por lo tanto, deberá agregar RewriteEngine. en cada host virtual donde desee utilizar reescribir reglas.

Redirección interna: mapear una URL a otra en el mismo host virtual

Una redirección interna es el ejemplo más simple de mod_rewrite. Si desea redirigir todas las solicitudes de default.aspx. a index.html. agregue la siguiente línea (también conocida como regla de reescritura) en RewriteEngine. en:

RewriteRule “^/default \ .aspx $” “/index.html”

y no olvide reiniciar Apache para que los cambios surtan efecto.

Esto puede resultar útil si su sitio se diseñó originalmente con ASP. y luego se cambió a HTML5. sin formato. Los motores de búsqueda tendrán el archivo .aspx indexado, pero ese archivo ya no existe.

En ese caso, deberá encontrar una manera de redirigir la solicitud para que sus posibles visitantes no se encuentren con una página de error. Para probar, creemos un archivo HTML simple llamado index.html dentro de /var/www/html. con el siguiente contenido:

Nuevo sitio

Default.aspx estaba aquí, pero ahora es index.html

Leave a comment

Your email address will not be published. Required fields are marked *