mod-rewrite Tutorial
Empezando con mod-rewrite
Buscar..
Observaciones
mod_rewrite es un modulo para apache. Este módulo se usa para reescrituras internas (solicitudes externas que deben cargar un recurso diferente) y redirecciones externas (solicitudes externas que deben hacer que el cliente solicite una URL diferente).
mod_rewrite proporciona un control más preciso sobre las reescrituras internas que mod_alias , ya que estas últimas solo pueden asignar solicitudes a nombres de archivos. mod_rewrite proporciona algunos medios de control de acceso , pero esto generalmente se hace mejor con mod_authz_core y mod_authz_host . mod_rewrite proporciona cierta integración con mod_proxy , pero por razones de rendimiento, esta integración no debe usarse y en ProxyPass
lugar se deben usar ProxyPass
y ProxyPassMatch
del último módulo.
mod_rewrite se puede configurar de una manera que permita colocar las directivas en los archivos de configuración dinámica (.htaccess). Por razones de rendimiento, siempre se debe usar el archivo de configuración estático (httpd.conf) siempre que sea posible.
Versiones
Versión | Fecha de lanzamiento |
---|---|
2.2 | 2015-07-17 |
2.4 | 2016-07-05 |
Instalación
mod_rewrite debe estar habilitado antes de ser utilizado en un servidor Apache.
Debian / Ubuntu
Ejecutar a2enmod rewrite
Luego reinicie Apache con el service apache2 restart
Caso general
Agregue o elimine el comentario de la siguiente línea en el archivo de configuración estática (como httpd.conf
):
LoadModule rewrite_module modules/mod_rewrite.so
Luego reinicie Apache.
Usando mod_rewrite en el archivo de configuración estática
Agregue la siguiente directiva antes de usar cualquier otra directiva mod_rewrite (RewriteRule, RewriteCond, RewriteBase o RewriteMap).
RewriteEngine on
Por defecto el motor está apagado. Se ignoran las directivas mod_rewrite encontradas mientras el motor está apagado. Habilítelo desde el contexto del host virtual cuando use hosts virtuales o desde contextos de directorio específicos cuando corresponda.
Usando mod_rewrite de los archivos de configuración dinámica
Importante: el uso de los archivos de configuración dinámica (.htaccess) es un gran éxito de rendimiento. Cuando tenga acceso al archivo de configuración estática (httpd.conf o algo similar) debe usarlo en su lugar.
En el archivo de configuración estática, permita que los archivos de configuración dinámica sobrescriban "Fileinfo" usando AllowOverride
. Esta directiva debe colocarse en el contexto del directorio:
AllowOverride FileInfo
El nombre de archivo utilizado para los archivos de configuración dinámica se rige por la directiva AccessFileName
. De forma predeterminada, los archivos de configuración dinámica son archivos ocultos llamados .htaccess
.
En la parte superior de cada archivo de configuración dinámica que contenga directivas mod_rewrite, agregue la siguiente directiva:
RewriteEngine on