2010-06-09 83 views
4

這裏是我的.htaccess文件重寫尾隨斜線問題

Options +FollowSymlinks 
RewriteEngine on 
ErrorDocument 404 /404.php 

RewriteRule ^(\d*)/(.*) /page.php?id=$1&slug=$2 

這一切工作正常。但是當我輸入site.com/342/my-page/(用斜線)時,我得到了一個404.

我需要尾部斜線作爲可選項。即,它將重定向到正確的頁面,無論是否使用斜槓。

我想這一點,但沒有奏效

RewriteRule ^(\d*)/(.*)/?$ /page.php?id=$1&slug=$2 

任何想法?

回答

6

*是貪婪的,所以它會吃掉你的尾部斜線,即使它不必。你必須迫使它遠離這樣的:

RewriteRule ^(\d*)/(.*[^/])/?$ /page.php?id=$1&slug=$2 

這是確保$ 2從來沒有以斜線結束

+3

((標誌爲正確答案)) – bobobobo 2010-12-22 22:58:13