我有一个简单的问题,我尝试使用下面的代码删除地址栏上的.php
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
# To externally redirect /dir/foo.php to /dir/foo/
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L]
# To internally redirect /dir/foo/ to /dir/foo.php
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^(.*?)/?$ $1.php [L]
并且它可以工作,但最终它继续显示“OBJECT NOT FOUND”如何解决这个问题?
答案 0 :(得分:1)
你可以尝试使用它:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
示例:您的页面是:www.yoursite.com/yourpage.php。现在您可以访问没有“.php”的同一页面。
同时强>
您可以尝试删除[R]永久重定向(删除错误),并在规则中保留扩展名。
我希望这会对你有所帮助!
答案 1 :(得分:0)
如果你只想删除网址中的.php
扩展程序,只需使用Options +MultiViews
,无需重写。