0

使用:Wordpress 编辑:.htaccess

是否可以使用 .htaccess 将带有特定查询字符串(垃圾邮件)的 URL 发送到默认的 WordPress 404 页面?

我目前使用以下代码将此类参数 301 重定向到 .htaccess 中的原始页面。

RewriteEngine On

RewriteCond %{QUERY_STRING} (^|&)spamword1 [NC,OR]
RewriteCond %{QUERY_STRING} (^|&)spamword2 [NC,OR]
RewriteCond %{QUERY_STRING} (^|&)spamword3 [NC]

RewriteRule (.*) /$1? [R=301,L]

例如:

http://www.mysite.com/page/3/?spam 301s 到http://www.mysite.com/page/3/

但是有没有办法 404 这些页面而不是 301 重定向它们?如果我使用 301 重定向,Google 似乎认为它们是软 404。

对于技术上不存在的 URL,每个人总是推荐 404 页面。

我试过这个:

RewriteEngine on
RewriteCond %{QUERY_STRING}spamword
RewriteRule (.*) /404.php? [R,L]

它将页面发送到默认的 Wordpress 404 URL(这很好),但服务器响应为“302 found”,我知道这是不正确的。

感谢您的任何帮助!

4

1 回答 1

0

这个线程有更多信息 - Redirect to Apache built-in 404 page with mod_rewrite?

基本上你需要添加 -

<?php
header( "HTTP/1.1 404 Not Found" );
exit;
?>

在标头中,它解析为 404。

于 2013-12-19T08:52:18.017 回答