HTACCESS: Как добавить X-Robots-Tag в определенный каталог?
Я попытался найти этот ответ здесь, а также Stackoverflow и не смог найти подходящий ответ.
Я пытаюсь добавить X-Robots-Tag 'noindex' в определенный каталог на моем сайте через HTACCESS.
Цель: я хочу, чтобы поисковые системы не проиндексировали все страницы в этом каталоге.
Моя настройка: версия PHP 5.6.40 / Apache / Linux
Пояснение: это не физический каталог. Это виртуальный каталог, который существует посредством перезаписи URL.
Пример URL: http://www.example.com/newsletters/
Пример URL: http://www.example.com/newsletters/spring.html
1 ответ
Создать .htaccess
файл в этом каталоге со следующей директивой mod_headers:
Header set X-Robots-Tag "noindex"
ОБНОВЛЕНИЕ № 1: Если бы это был "виртуальный" каталог, как бы отличался подход?
В этом случае используйте .htaccess
файл в корне документа и установить переменную среды (например, NOINDEX
) когда запрашивается требуемый URL-путь и задайте X-Robots-Tag
условно в зависимости от того, установлен ли envvar.
Например:
SetEnvIf Request_URI ^/virtualdirectory/ NOINDEX
Header set X-Robots-Tag "noindex" ENV=NOINDEX
SetEnvIf
является частью mod_setenvif.
ENV=
аргумент Header
Директива позволяет вам устанавливать этот заголовок, только если установлен указанный envvar.
ОБНОВЛЕНИЕ № 2: Apache 2 я верю.
Если вы используете Apache 2.4+ (в отличие от Apache 2.2), вы можете использовать выражение Apache вместо того, чтобы устанавливать переменную окружения. Например:
<If "%{REQUEST_URI} =~ m#^/virtualdirectory/#">
Header set X-Robots-Tag "noindex"
</If>