Pregunta

En el pasado he logrado copiar / editar / pegar reglas de reescritura en un servidor apache sobre el cual tenía un control limitado.

Ahora, sin embargo, estoy experimentando con un servidor Apache que puedo reiniciar y configurar a mi gusto, pero ni siquiera puedo obtener un ejemplo básico de reescritura para trabajar y eso es después de haber leído al menos dos tutoriales. He jugado con LogLevel y RewriteLog pero no puedo encontrar evidencia real de que se estén utilizando mis reglas de reescritura realmente básicas. Mi archivo de registro de reescritura fue creado pero está vacío. También he intentado comentar cada cosa desde httpd.conf pero las cosas de reescritura.

Veamos qué otra información puedo agregar:

chilcott:/etc/apache2/conf.d# uname -a
Linux chilcott 2.6.26-1-486 #1 Sat Jan 10 17:46:23 UTC 2009 i686 GNU/Linux


chilcott:/etc/apache2/conf.d# apache2ctl -V
Server version: Apache/2.2.9 (Debian)
Server built:   Jan 20 2009 17:29:25
Server's Module Magic Number: 20051115:15
Server loaded:  APR 1.2.12, APR-Util 1.2.12
Compiled using: APR 1.2.12, APR-Util 1.2.12
Architecture:   32-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT=""
 -D SUEXEC_BIN="/usr/lib/apache2/suexec"
 -D DEFAULT_PIDLOG="/var/run/apache2.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="/var/run/apache2/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"
¿Fue útil?

Solución

¿Tiene sus reglas de reescritura en la sección correcta de su httpd.conf? Probablemente deberían estar en una sección vhost.

Publicar su httpd.conf (o al menos parte de él) podría ayudar.

Debería verse un poco así:

LoadModule rewrite_module modules/mod_rewrite.so

RewriteLogLevel 9
RewriteLog ".....rewrite.log"


<VirtualHost *:80>
    DocumentRoot "..."

    RewriteEngine On
    RewriteRule ^/foo /bar
</VirtualHost>

Otros consejos

Necesita cargar el módulo para usarlo. Busque en su archivo httpd.conf una línea como la siguiente y elimine el carácter de comentario principal # si hay alguno:

#LoadModule rewrite_module modules/mod_rewrite.so

Entonces solo necesita reiniciar su servidor Apache.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top