我需要一个.htaccess文件,它会执行以下操作:
www.site.com/some_folder/test
时,它会保持地址不变并打开相应的页面(test.php)www.site.com/some_folder/test.php
时,它会将.php扩展名移除到www.site.com/some_folder/test
,并会打开相应的页面(test.php)我现在拥有的是:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
它只能满足第一种情况,但不能满足第二种情况。 (当我输入www.site.com/some_folder/test.php
时,它仍会显示www.site.com/some_folder/test.php
)
我应该在.htaccess文件中更改/添加什么才能实现第二种方案?
非常感谢任何帮助。
非常感谢。
答案 0 :(得分:0)
将以下指令添加到.htaccess
:
RewriteCond %{ENV:REDIRECT_STATUS} !200
RewriteRule (.*)\.php$ /$1 [R=301,L,QSA,NC]
编辑: 如果你在Localhost:
RewriteBase /sitename/
RewriteCond %{ENV:REDIRECT_STATUS} !200
RewriteRule (.*)\.php$ $1 [R=301,L,QSA,NC]