我正在一个名为testsite的目录中工作,我希望所有.php扩展名都被一个尾部斜杠替换。我就在那里(例如)输入http://mydomain.com/testsite/about表示已加载http://mydomain.com/testsite/about.php。
但是,我现在希望将URL显示为./about/,以便只有一个版本显示在搜索引擎排名中。
这是我的.htaccess:
RewriteEngine On
RewriteBase /testsite/
RewriteRule ^()$ index.php [NC,L]
RewriteCond %{REQUEST_URI} !(^/?.*\..*$) [NC]
RewriteRule (.*)$ $1.php [NC]
此外,是否可以保留(并隐藏显示我传递的任何参数)?
非常感谢所有帮助!
答案 0 :(得分:1)
请尝试以下规则:
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .*[^/]$ %{REQUEST_URI}/ [L,R=301]
RewriteRule ^$ index.php [L]
RewriteRule (.*)/$ $1.php [NC]
答案 1 :(得分:0)
尝试用以下内容替换最后一条规则:
RewriteRule (.*)$ $1.php [NC] [E=ORIGINAL_URL:$1]