@AdmTwins

Как подменить robots.txt для некоторых доменов на хостинге?

Дано:
Xостинг сайтов, Ubuntu 12.04, Apache2.22
На хостинге расположены "живые" сайты и "тестовые".
Живые - это сайты, к которым привязано нормальное доменное имя вида domainname.ru
Тестовые - это сайты, которые отзываются по имени вида domainname.test.ru

Задача:
Необходимо при запросе на "живые" домены отдавать настоящий robots.txt, а при запросе на "тестовые" - файл /var/www/default/robots.txt, чтобы "тестовые" площадки были закрыты от индексирования.
Следует учесть, что если два доменных имени domainname.ru и domainname.test.ru имеют по факту один и тот же DocumentRoot и ссылаются по сути на один и тот же сайт, то для первого должен отдаваться настоящий robots.txt, для второго - по умолчанию

Попытка прописать в apache2.conf следующее не дала результатов:
<Files "robots.txt">
 RewriteEngine on
 RewriteCond %{HTTP_HOST} test\.ru$
 RewriteCond %{HOST_URI} robots.txt$
 RewriteRule ^(.*)$ /var/www/default/robots.txt [L]
</Files>
  • Вопрос задан
  • 2818 просмотров
Пригласить эксперта
Ответы на вопрос 2
EminH
@EminH
1. добавьте расширение txt mime types :
AddType application/x-httpd-php .php .txt

2. Создайте robots.txt c кодом

<?
if ($_SERVER[HTTP_HOST]=="domain1.ru" } { readfile("robots-domain1.txt"); }
if ($_SERVER[HTTP_HOST]=="domain2.ru" } { readfile("robots-domain2.txt"); }
?>

3. Создайте, собственно файлы robots-domain1/2.txt с контентом для роботов
Ответ написан
Комментировать
@AdmTwins Автор вопроса
Не совсем то, что нужно - это решение подразумевает модификацию файлов площадки.

А нужно, чтобы сервер при запросе файлов по шаблону "*.test.ru/robots.txt" отдавал нужный текст, а если под этот шаблон не попадает, то чтобы отдавался реальный файл из директории сайта
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы