php 返回状态代码410与Symfony的谷歌机器人

a7qyws3x  于 2022-12-21  发布在  PHP
关注(0)|答案(4)|浏览(145)

由于谷歌机器人访问我们的网站与错误的网址之一,我不断得到服务器错误困扰我作为管理员(原因是我不小心提交了一个错误的网站Map3个月前。是的,我已经重新提交,删除,重新提交了几次,但它仍然在访问)。
我现在在谷歌论坛上了解到,使用410响应将使goggle机器人停止访问。
有人知道如何从Symfony2发送410响应吗?如果这不起作用,我也可以使用普通的PHP解决方案。
非常感谢你的帮助。

fkaflof6

fkaflof61#

我已经试过了,看起来很有效。一旦我知道它是否有长期效果,我会更新的

$response = new Response();
   $response->headers->set('Content-Type', 'text/html');
   $response->setStatusCode(410);
   return $response;}
6pp0gazn

6pp0gazn2#

这基本上与前面的答案相同,但是使用a Twig 404模板(您必须创建)和一行代码:

use Symfony\Component\HttpFoundation\Response;

...

return new Response($this->renderView('TwigBundle:Exception:error404.html.twig'), Response::HTTP_GONE);
hs1ihplo

hs1ihplo3#

我用这个

$response = new Response();
$response->setStatusCode(410);
return $this->render('twig_template_uri', ['key'=> $value, ...], $response);

当数据存在时,我在控制器中使用此函数,但例如"isActive = false

5w9g7ksd

5w9g7ksd4#

您可以使用GoneHttpException

throw new GoneHttpException();

相关问题