我有一个基本上“删除”Web浏览器中文件扩展名的.htaccess文件(从example.php到示例)。这是代码:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php [L,QSA]
基本上,如果找不到文件(about),它会添加.php扩展名(about.php)。我想(如果仍未找到该文件)将用户重定向到404.php。因此,如果用户加载/ page1,并且page1.php不存在,则会重定向到404页面。我将此代码添加到.htaccess:
ErrorDocument 404 /404.php
就其本身而言,此代码将重定向到404页面。但是当我拥有整个代码时......
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php [L,QSA]
ErrorDocument 404 /CWTC/404.php
...它只显示“500内部服务器错误”。
有谁知道我做错了什么?
谢谢!
答案 0 :(得分:2)
这解决了我的问题:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php [L,QSA]
ErrorDocument 404 /404.php
谢谢!