working work not mod_rewrite htaccess habilitar enabled doesn already apache mod-rewrite sourceforge

apache - work - Otra pregunta mod_rewrite finalizada



rewrite url apache (2)

Tal vez MultiViews está causando este comportamiento. Intenta deshabilitar esta opción:

Options -MultiViews

Otra suposición: eliminar la barra inicial en la sustitución.

Tengo las siguientes reglas de reescritura en mi archivo .htaccess :

RewriteEngine on RewriteRule ^news/([0-9]+)/?$ /?action=news&start=$1 [L] RewriteRule ^man/([a-zA-Z0-9_]+)/?$ /?action=man&page=$1 [L] RewriteRule ^([a-zA-Z0-9_]+)/?$ /?action=$1 [L]

Todo entonces termina con un /? para verificar si hay una barra inclinada opcional. Esto funciona, significa que puedo usar http://www.site.com/news/ o http://www.site.com/news para acceder a la página de news , que es lo que quiero. El problema es que, si bien http://www.site.com/news/ funciona bien y redirige silenciosamente y todas esas cosas divertidas, http://www.site.com/news se redirecciona visiblemente a http://www.site.com/news/?action=news por alguna razón. Ambos presentan el mismo sitio, pero por alguna razón, si dejo de lado la barra diagonal, la URL cambia y se ve muy desagradable.

¿Alguna idea de lo que está pasando con esto? No tengo otras reglas en mi archivo .hyaccess . También señalaré que http://www.site.com/news/0 y http://www.site.com/news/0/ no sufren el mismo problema. Ambos se redirigen de forma invisible a http://www.site.com/?action=news&start=0 , que es lo que quiero. Solo parece ser un problema con esa tercera regla.

Si ayuda, el sitio está en SourceForge.net.


Una conjetura descabellada: hay un directorio llamado "noticias", y el redireccionamiento automático del directorio Apache "agregar una barra inclinada" está activando e interactuando con su RewriteRule de una manera extraña. Si ese es el caso,

DirectorySlash Off

puede ayudar.