当有人访问任何.php时返回404页面?

时间:2015-09-23 21:29:44

标签: php .htaccess

我总是在.htaccess中隐藏文件 .php 扩展名。但是,如果有人访问 .php 文件,则返回当前 .htaccess 文本中应该是404页的意外错误页面。

我的实际文字(来自@anubhava回答):

# to present a custom 404 page
ErrorDocument 404 ./error

RewriteEngine On

# return 404 for direct .php requests
RewriteCond %{THE_REQUEST} \.php[/\s?] [NC]
RewriteRule ^ - [R=404,L]

# silent rewrite to add .php extension
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]

只是一个测试。 修改:我认为错误发生在404文档上,因为现在正在返回404错误。它不会显示在404页面上,而是显示我在浏览器页面中输入的目录,如下所示:

  

./误差

1 个答案:

答案 0 :(得分:2)

以下是RewriteEngine On下面的规则,为.php个文件的请求提供404:

# to present a custom 404 page
ErrorDocument 404 /error

RewriteEngine On

# return 404 for direct .php requests
RewriteCond %{THE_REQUEST} \.php[/\s?] [NC]
RewriteRule !^error - [R=404,L]

# silent rewrite to add .php extension
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.+?)/?$ $1.php [L]