2011-10-01 9 views
7

estoy usando mod_rewrite para redirigir este modo:Ignorar barra final con Apache reescritura

RewriteRule (work)/?$ $1.php [L]

Esto envía cualquier URL que termina en /work o /work/ a work.php

El problema es que cuando se arrastra una slash está incluido, lo trata como un directorio, y no como el archivo que realmente es. Esto, por supuesto, rompe todos mis caminos relativos en el archivo.

no me importa tener una barra en la URL, pero ¿hay alguna manera de utilizar Apache para ignorar la barra final, y tratar la URL como un archivo, tal como lo haría sin la barra?

+0

¿tiene un directorio "trabajo" ? –

+0

No, solo un archivo work.php. – cmal

+0

¿tiene algo más en .htaccess o vhost? –

Respuesta

11

Puesto que usted no desea que la URL para parecerse www.domain.com/work/ aquí es lo que puede hacer:

RewriteEngine On 
    RewriteRule ^work/$ http://www.domain.com/work%{REQUEST_URI} [R=301,L,NC] 
    RewriteRule (work)$ $1.php [L,QSA,NC] 

Esto redirigirá /work/ a /work y /work/?page=main a /work?page=main

Cuestiones relacionadas