我不希望网站的apache返回任何HTTP代码404,
原因是认证委员会将扫描所有网站,
许多javascript链接和一些事件将导致404代码,
事实上,这些链接是有效的,但检查器会误判错误。
所以,我想阻止apache返回HTTP代码404,
如何配置apache返回HTTP cods 200而不是404并显示我的定义错误页面?
答案 0 :(得分:6)
来自:http://www.askapache.com/htaccess/apache-status-code-headers-errordocument.html
将此添加到.htaccess文件中:
Redirect 200 /404
ErrorDocument 404 /404
这会将Apache ErrorDocument更改为/ 404文件。但是Redirect行导致请求/ 404发出200 OK响应而不是404.
如果这不起作用,则无疑会重写。因此,如果是这种情况,请将这个添加到前两行,但高于.htaccess文件中的任何其他重写行:
Options FollowSymLinks ExecCGI
RewriteEngine On
RewriteBase /
# If the requested file doesnt exist
# and if the requested file is not an existing directory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^[^4]* /404 [L,S=4000]
答案 1 :(得分:2)
我认为你可以使用下面的代码简单地编写PHP:
header("HTTP/1.1 200 OK");
你可以测试它。
答案 2 :(得分:1)
我用这个:
<?php header("Status: 200 OK"); ?>
此代码必须放在第一行代码中的.php文件的顶部。搜索引擎,抓取工具,浏览器和访问该网站的任何人都会将errordocument 404页面视为标题200.
标题200表示页面存在。 Google将对标题状态为200的网站进行抓取和索引。