2012-08-25 242 views
0

我在這裏遇到了我的mod_rewrite模塊問題。如果我/多倫多/它會指示我相應的,但是,如果我/多倫多沒有後面的斜線它回來了一個404。我需要/多倫多和/多倫多/都從/ city_name文件夾讀取。我怎樣才能避免最後的斜線,這裏是我的代碼:.htaccess mod_rewrite尾部斜槓

RewriteEngine敘述在 RewriteBase/CITY_NAME

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*)/$ /city_name/index.php?page=$1 [L,QSA] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} /([^\./]+)\.php$ 
RewriteCond %{DOCUMENT_ROOT}/city_name/%1.php -f 
RewriteRule ^(.*)/([^\./]+)\.php$ /city_name/$2.php?page=$1 [L,QSA] 

回答

1
RewriteRule (.*)/$ /city_name/index.php?page=$1 [L,QSA] 

這條規則明確地說,URI有一個結束斜線,所以'多倫多'不符合規則。要使斜線可選,請使用?運營商:

RewriteRule (.*)/?$ /city_name/index.php?page=$1 [L,QSA]