【问题标题】:Redirect to 404 if query string contains anything如果查询字符串包含任何内容,则重定向到 404
【发布时间】:2016-12-28 05:08:36
【问题描述】:

尽管进行了广泛的搜索,但我似乎找不到答案,所以如果之前有人问过这个问题,我很抱歉,我只是错过了。

我有一个只有静态 URI 的网站,所有 SEO 友好,硬编码在 .htaccess 文件中。不幸的是,我们看到很多其他网站通过查询字符串链接到我们,搜索令人讨厌的东西。这损害了我们的搜索排名,我们希望为任何带有查询字符串的内容返回 404。

我尝试了以下变体,但没有成功:

RewriteCond %{QUERY_STRING} .
RewriteRule ^404.php/? [R,L]

任何帮助将不胜感激。

【问题讨论】:

    标签: .htaccess mod-rewrite redirect query-string


    【解决方案1】:
    RewriteEngine on
    RewriteCond %{QUERY_STRING} .
    RewriteRule (.*) /404.php? [R,L]
    

    这应该可以实现您想要做的事情。

    【讨论】:

      【解决方案2】:

      上面的答案是

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

      不会向搜索引擎返回 404。它只是显示 404 页面。使用下面的行来完成目标

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

      请记住,即使这会消除谷歌索引中的垃圾邮件链接,它也会限制 wp-admin 和搜索功能。

      【讨论】:

        猜你喜欢
        • 2012-10-05
        • 2014-02-11
        • 1970-01-01
        • 1970-01-01
        • 2011-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多