找不到隐藏.php地址栏对象


hiding .php address bar object not found

我有一个简单的问题,我试图使用下面的代码删除地址栏上的.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"我该如何解决这个问题?

您可以尝试使用这个:

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

示例:您的页面是:www.yoursite.com/yourpage.php。现在您可以访问不带".php"的同一页面。

您可以尝试删除[R]永久重定向(以删除您的错误),并在规则中保留扩展。

我希望这对你有帮助!

如果您只想从URL中删除.php扩展名,只需使用Options +MultiViews,无需重写。