Pregunta

Estoy utilizando mod_rewrite con lighttpd, y estoy teniendo un problema ...

Aquí está mi regla:

url.rewrite-once = (".*\.(js|ico|gif|jpg|png|css)$" => "$0", "" => "/index.php")

La regla Apache funciona en Apache, y se ve así:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d   
RewriteRule !\.(js|ico|gif|jpg|png|css)$ /index.php

Funciona perfectamente, excepto, cuando quiero utilizar phpmyadmin, http://www.site.com/ phpmyadmin es, por supuesto, ser redirigido a donde yo estoy diciendo que ... Sin embargo, me gusta mucho trabajar con los directorios y archivos reales.

¿Cómo puedo cambiar la regla de reescritura en lighttpd a respetar las cosas tales como / phpmyadmin?

Editar:

Mirando por encima de todo y de hacer algunas investigaciones, me falta el equivilent lighttpd de estas líneas:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d  

¿Cómo puedo añadir estos a la configuración de reescritura lighttpd?

¿Fue útil?

Solución

Después de mucho andar por ahí, leyendo, y muchas otras cosas laboriosas, se me ocurrió esto, y espero que ayuda a todos los demás con el mismo problema que tuve ...

url.rewrite-once = (
"/(.*)\.(.*)" => "$0",
"/(phpmyadmin|css|img|js)/" => "$0",
"^/([^.]+)$" => "/index.php/$1"
)

Por lo tanto: http://www.site.com/class/method/test/ 1 / test2 / 2 (funcionará como se espera) http://www.site.com/phpmyadmin/ (funcionará como se espera - Nota barra final )

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