@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>
  • Вопрос задан
  • 2810 просмотров
Пригласить эксперта
Ответы на вопрос 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" отдавал нужный текст, а если под этот шаблон не попадает, то чтобы отдавался реальный файл из директории сайта
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы