是否可以为404错误页面发送2个http状态代码并重定向到首页

时间:2018-11-25 07:03:39

标签: .htaccess http-status-code-404 http-status-code-410

.htaccess文件中,是否可以为404错误页面发送410状态代码,然后立即重定向到首页?

例如,当搜索引擎抓取404页面时,服务器发送410状态代码,然后重定向到首页。

1 个答案:

答案 0 :(得分:0)

否,如果有此意图,则不可能在同一响应中发送4xx 重定向(即3xx状态)。

p 410(或404)响应是一个响应。 3xx HTTP重定向是另一个完全不同的响应。您可以做一个或另一个,而不是两个都做。

无论如何,Google可能会看到3xx重定向为软404重定向到首页(因为它们通常是不好的用户体验)。

但是,您可以发送410“消失”状态,而不是404“未找到”状态。具体如何执行将取决于您的系统。例如,如果您有一个现有的404文档,则在将响应发送到客户端时,简单地覆盖HTTP状态可能会更容易。要在任何响应未映射到物理文件或目录时发送410,则可以在.htaccess中使用mod_rewrite进行以下操作:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ - [G]