如何将Apache HTTP代码404替换为200



我不希望网站的apache返回任何HTTP代码404,
原因是认证委员会将扫描所有网站,
许多javascript链接和一些事件将导致404代码,
事实上,这些链接是有效的,但检查器会误判错误
因此,我想阻止apache返回HTTP代码404,
如何配置apache返回HTTP代码200而不是404,并显示我的定义错误页面

来源:http://www.askapache.com/htaccess/apache-status-code-headers-errordocument.html

  1. 在名为404的主web目录中创建一个空白文件。可以是空白的
  2. 将其添加到.htaccess文件中:

    Redirect 200 /404
    ErrorDocument 404 /404
    

这将把Apache ErrorDocument更改为/404文件。但是Redirect行导致对/404的请求发出200 OK响应,而不是404。

如果这不起作用,那无疑是由于重写。因此,如果是这种情况,请将其添加到.htaccess文件中的前2行下面,但添加到任何其他重写行之上:

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]

详细解释请访问:http://www.askapache.com/htaccess/apache-status-code-headers-errordocument.html#Automate_ErrorDocument_Triggering

我认为您可以使用下面的代码将其简单地编码到PHP中:

header("HTTP/1.1 200 OK");

你可以测试它。

我使用这个:

<?php header("Status: 200 OK"); ?>

这段代码必须放在php文件的第一行代码的顶部。搜索引擎、爬虫、浏览器和任何访问该网站的人都将看到错误文档404页面作为标题200。

标题200表示页面存在。谷歌将抓取和索引标题状态为200的网站。

相关内容

  • 没有找到相关文章

最新更新