【问题标题】:X Robots Tag noindex specific pageX Robots Tag noindex 特定页面
【发布时间】:2017-10-05 07:25:09
【问题描述】:

我的网站 www.domain/privacy-policy/ 上有一个隐私政策页面,我想使用 X Robots 标签对其进行无索引。我尝试了以下代码,但它不匹配

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

## Redirect HTTP to HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

RewriteRule ^privacy-policy - [env=NOINDEXFOLLOW:true]
Header set X-Robots-Tag "noindex, follow" env=NOINDEXFOLLOW

</IfModule>

# END WordPress

为了清楚起见,已编辑问题以包含完整的 htaccess 文件。

【问题讨论】:

    标签: wordpress apache .htaccess mod-rewrite noindex


    【解决方案1】:

    www.domain/privacy-policy/

    "privacy-policy" 位于 URL 路径中,而不是您在指令中使用的查询字符串中。请尝试在您的 .htaccess 文件顶部附近执行以下操作:

    RewriteEngine On
    RewriteRule ^privacy-policy - [env=NOINDEXFOLLOW:true]
    
    Header set X-Robots-Tag "noindex, follow" env=NOINDEXFOLLOW
    

    但是,最好使用 mod_setenvif 而不是 mod_rewrite 来设置环境变量:

    SetEnvIf Request_URI "^/privacy-policy" NOINDEXFOLLOW
    

    更新:由于您使用的是 front-controller(WordPress 指令),因此设置环境变量的 RewriteRule 指令需要放在顶部你的 .htaccess 文件,在 WP 指令之前。通过将此指令放置在 WP 指令之后,它根本不会被处理。 (如果您愿意,SetEnvIfHeader 指令可以稍后出现在文件中。)

    但是,由于您使用 前端控制器 并将所有请求重写为 index.php,因此您看到的请求中没有设置 NOINDEXFOLLOW 变量。重写为index.php 后,Apache 将其更改为REDIRECT_NOINDEXFOLLOWREDIRECT_ 前缀),这就是您需要在Header 指令中检查的内容。所以,总结一下:

    SetEnvIf Request_URI "^/privacy-policy" NOINDEXFOLLOW
    Header set X-Robots-Tag "noindex, follow" env=REDIRECT_NOINDEXFOLLOW
    

    (不太直观。)

    如果您使用RewriteRule 指令来设置NOINDEXFOLLOW 环境变量,那么它必须出现在文件的开头。

    【讨论】:

    • 还是不匹配
    • 以上两种方法你都试过了吗?你的.htaccess 文件中有其他指令吗?
    • 这两种方法都不起作用。我已经用完整的 htaccess 编辑了这个问题
    • 啊,您在使用 WordPress/前端控制器时遇到了一些问题。我已经更新了我的答案。
    • @ReinaldoGil 带有REDIRECT_ 前缀的更新应该适用于任何在.htaccess 内部重写URL 的Apache 服务器。因此,任何使用前端控制器模式的 CMS/框架,如 WordPress、Joomla、Drupal、Laravel 等。
    猜你喜欢
    • 2012-11-01
    • 2020-08-06
    • 1970-01-01
    • 2021-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 1970-01-01
    相关资源
    最近更新 更多