2009-10-23 45 views
0

如果我有一個網址http://example.com/page.php的.htaccess mod_rewrite的問題

,但我想在頁面顯示的時候有人去http://example.com/page/

我怎麼去這樣做?斜線後

<IfModule mod_rewrite.c> 

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} -f [NC,OR] 
RewriteCond %{REQUEST_FILENAME} -d [NC] 
RewriteRule .* - [L] 
RewriteRule ^$ index.php [L,QSA] 
RewriteRule ^([^/\.]+)/?$ $1.php [L,QSA] 

</IfModule> 

注意問號:

+0

Duplicate:http://stackoverflow.com/questions/1609710/modrewrite-htaccess-question – Gumbo 2009-10-23 14:14:27

回答

0

試試這個:

RewriteEngine on 
RewriteRule ^([^/]+)/$ $1.php 
+0

不錯,但如果我希望http://example.com/page也可以工作(缺少尾部斜線),該怎麼辦? – kylex 2009-10-23 14:19:50

+0

@kylex:使用'/?'使斜槓變爲可選項,並擴展您的規則,讓請求的URL路徑不以'.php'結尾:'RewriteCond $ 1!。* \。php $' – Gumbo 2009-10-23 16:16:04

0

我通常使用這樣的事情。你可以把它添加到Gumbo的例子中來「測試」一個結尾的斜線(所以它可以存在或不存在)。