我在.htaccess
文件中使用以下代码来隐藏php文件的扩展名。
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ ([^\.]+)$ $1.php [NC]
我将此文件放在localhost/obis/
中
但是当我运行没有index.php
扩展名的.php
文件时,会发生以下错误。
The requested URL /obis/index was not found on this server.
有人可以建议可能出现的错误吗?
我从本教程中获取了代码:http://www.youtube.com/watch?v=L6k_WvvpPpk
答案 0 :(得分:2)
在root .htaccess中尝试这两个规则:
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+(?:index)?(.*?)\.php[\s?] [NC]
RewriteRule ^ /%1 [R=301,L,NE]
RewriteCond %{THE_REQUEST} /index [NC]
RewriteRule ^(.*?)index([/.]|$) /$1 [L,R=302,NC,NE]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1.php -f [NC]
RewriteRule ^(.+?)/?$ /$1.php [L]