Задать вопрос
  • Как для двух доменов одного сайта, запретить индексацию одного из их?

    @dmitryim
    Мы решаем на уровне веб-сервера (nginx).

    Добавляем во все конфиги наших сайтов примерно такой блок (отдельным включаемым файлом, конечно):

    location /robots.txt {
        set $disallow_indexing '';
    
        if ($host ~ demo\.) {
            set $disallow_indexing 'yes';
        }
    
        if ($disallow_indexing = 'yes') {
            root /var/www/html;
        }
        if ($disallow_indexing != 'yes') {
            proxy_pass      $proxy_addr;
        }
    }


    Содержимое /var/www/html/robots.txt:

    User-agent: *
    Disallow: /


    Итого получается, что если запрашивается robots.txt с домена demo.site.ru, то ему отдается Disallow. Если же домен не содержит demo, то отдается тот robots.txt, который лежит в проекте.

    Решение получается надежным и удобным т.к. не приходится помнить про каждый отдельный проект - все демо домены закрываются автоматически.
    Ответ написан
    1 комментарий