我制作了一个自定义 404 页面并插入到我的 htaccess 文件中:
ErrorDocument 404 /404.php
每当我测试没有扩展名或 .html 扩展名的 url 时,错误直接工作正常。但是,当我输入带有 .php 扩展名的 url 时,会出现一个空白页面,其中显示“未指定输入文件”消息。弹出。
我必须做什么才能让我的自定义 404 页面也弹出 .php 文件扩展名?
我制作了一个自定义 404 页面并插入到我的 htaccess 文件中:
ErrorDocument 404 /404.php
每当我测试没有扩展名或 .html 扩展名的 url 时,错误直接工作正常。但是,当我输入带有 .php 扩展名的 url 时,会出现一个空白页面,其中显示“未指定输入文件”消息。弹出。
我必须做什么才能让我的自定义 404 页面也弹出 .php 文件扩展名?
当 PHPCGI Binary
在您的服务器中编译为 a 时会发生这种情况。在这种情况下,即使您apache
定义了 404,对 PHP 的请求也会传递CGI binary
给当未找到要处理的文件时,会出现此错误 ( No input file specified
)。
此问题的解决方案将根据各种其他配置参数而有所不同,但基本上您应该尝试做的是首先检查 URL,如果它不存在,则将其转换为非 php url,以便规则生效并显示正确的 404。
未经测试,但内容如下:
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteRule ^.+\.php$ /non_existant_file
你需要设置目录
RewriteEngine on
ErrorDocument 404 http://www.yoursite.com/404.php
如果您的本地人喜欢这样
RewriteEngine on
ErrorDocument 404 directory/404.php