5 ответов

Лавр Иванов
25.07.2016 17:25

Статичный контент на Timeweb отдается веб-сервером nginx.
Файл robots.txt относится к статичному контенту.

В данном случае нужно либо пытаться придумать хитрые правила перенаправления чтобы реализовать желаемое либо пытаться искать решения со стороны 1C-Битрикс.

Сегодня вечерком попробую прикинь что можно предложить для достижения нужного результата, но вряд ли смогу порадовать готовым решением. Если это критично для работы вашего сайта, можно VDSку попробовать настроить под свои нужны со своими настройками.

Спасибо за ответ! служба поддержки таймвеб посоветовала довольно элегантное решение: удалить вообще оригинальный robots.txt - в этом случае запросы начинают обрабатываться апачем, ну а дальше дело техники)

Иван Абрамов
26.07.2016 11:16

Вариант хороший. А он поможет вам добиться желаемого результата?

Да, поможе, просто для этого варианта нужно не только на каждый поддомен прописать отдельное правило в .htaccess, но и для основного домена тоже.

Т.е. основной robots.txt переименовывается, например, в robots_main.txt, и для него прописывается основной правило:

RewriteCond %{HTTP_HOST} ^site.ru$ [NC]
RewriteRule ^robots.txt$ robots_main.txt [L]

И так же для каждого региона отдельный robots_<регион>.txt, и отдельное правило:

RewriteCond %{HTTP_HOST} ^<регион>.site.ru$ [NC]
RewriteRule ^robots.txt$ robots_<регион>.txt [L]

Однако вариант от Александра Попова не работает, nginx не выполняет эту работу.

сделали в htaccess:
RewriteRule ^robots.txt$ robots_for_domain.php [L]

а в файле:
<?header("Content-Type:text/plain");?>
текст robots.txt
и Host: http://<?=$_SERVER['HTTP_HOST']?>