2012-09-12 39 views
0

我有一个子目录,里面有一堆.php文件。我现在有这个作为我的.HTACCESS清洁地重写URL。HTACCESS用获取变量重写

RewriteEngine on 
Options +FollowSymLinks 
RewriteBase /mailing_list 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php 

这是很好,因为它变成http://www.example.com/mailing_list/homehttp://www.example.com/mailing_list/home.php

我还需要考虑是用干净的URL为GET变量的页面。该页面被称为w.php,它通过?i=(int)

当我尝试访问http://www.example.com/mailing_list/w/1时,出现505服务器错误。我需要添加到我的htaccess来解决这个问题?是否有充分的证明方式来解释我参与其中的其他人。例如:

如果一个页面出现所谓的博客和逝者如斯的博客ID是什么:http://www.example.com/mailing_list/blog/1

我是否需要添加新的规则为专页?

回答

0

更换

RewriteRule ^(.*)$ $1.php 

通过

RewriteRule ^([^/]+)$ $1.php [L,QSA] 
RewriteRule ^([^/]+)/(.*)$ $1.php?i=$2 [L,QSA] 
+0

谢谢!如果我只想定位目录/ w我会删除([^ /] +)/并用w /替换? – csteel

+0

是的,它会正常工作 – mabarroso