Php 纠正错误类型soft 404

Php 纠正错误类型soft 404,php,http-status-code-404,google-webmaster-tools,Php,Http Status Code 404,Google Webmaster Tools,我尝试更正错误“soft404” 我读了这篇文章,所以没关系,我明白了 要使用个性化页面404更正此错误,我可以执行以下操作: <?php try{ echo "Error, I fail to load the services I catch It ! (have imagination)"; } catch(Exception $e){ header("HTTP/1.0 404 Not Found");

我尝试更正错误“soft404”

我读了这篇文章,所以没关系,我明白了

要使用个性化页面404更正此错误,我可以执行以下操作:

<?php



    try{
         echo "Error, I fail to load the services I catch It ! (have imagination)";
    }
    catch(Exception $e){
        header("HTTP/1.0 404 Not Found");
        include 'page404.html';
        exit;
    }


?>

您不太理解404错误的含义,并将其与500错误混淆。
PDO错误与页面存在无关。这是一个代码错误,意味着站点遇到临时问题。因此,必须发送500个

据说现代PHP版本必须处理它,但我有一些报告说它没有。 我所知道的唯一有保证的方法是使用php fpm,因为在发生错误时发送503是其核心功能之一

无论如何,至少尝试在PHP设置(ini或perdir)中设置display_errors=off。
然后将代码更改为

<?php
echo "Je me connecte a un module foireux et la page est introuvable.";
$pdo = new PDO("n'importe quoi !");

对谷歌来说就足够了。

Soft404只是发送404的一种错误方式。你的问题是什么?对不起,你能重新措辞吗?你到底想纠正什么?为什么呢?谷歌给我发了一封邮件,因为我有错误“soft404”。实际上,如果页面无法加载,我会加载标题(“Location:page404.html”);出口这很糟糕。所以如果我使用header(“HTTP/1.04notfound”);之前,它纠正了错误?请提供一个真实的情况下,击中你的软404。最有可能的结果是500。请学习HTTP代码。所以我可以在我的catch头中这样做(“HTTP/1.1 503服务暂时不可用”);标题(“状态:503服务暂时不可用”);标题('Retry-After:300')//300秒如果你想纠正你的软404,只需删除“位置”标题。是的,劳伦斯就是这么跟你说的。但请区分“页面未找到”错误和“页面存在但加载暂时有问题”是的,我理解这一区别,多亏了你:)
<?php
$data = DB::getData("SELECT * FROM articles WHERE id=?", $_GET['id']);
if (!$data)
{
    throw new http404();
}
header("HTTP/1.0 404 Not Found");
exit;