Задать вопрос
webdesignermsk
@webdesignermsk
Веб-дизайнер, программист, креативщик, сценарист

Как в битрикс сделать динамический robots.txt для поддоменов?

Существует сайт с поддоменами, динамический контент от выбора региона. Не понимаю как сделать правильно robots.txt для поддомен.
  • Вопрос задан
  • 1093 просмотра
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 3
shambler81
@shambler81 Куратор тега 1С-Битрикс
1. если это многосайтовость то положи в каждый сайт
2. если это просто алиасы домена то легче всего это сделать в nginx
3. насколько я понимаю у аспронет что-то подобное , тут переделай сам
robots.php
<?
$arHost = explode( ":", $_SERVER["HTTP_HOST"]);
$_SERVER["HTTP_HOST"] = $arHost[0];
$hostname = $_SERVER['HTTP_HOST'];

function echoTextFile($file) {
if (! file_exists($file)) return false;
if (! is_readable($file)) return false;

$timestamp = filemtime($file);
$tsstring = gmdate('D, d M Y H:i:s ', $timestamp) . 'GMT';
$etag = md5($file . $timestamp);

header('Content-Type: text/plain');
header('Content-Length: '.filesize($file));
header("Last-Modified: $tsstring");
header("ETag: \"{$etag}\"");

readfile($file);

return true;
}

$robotsHost = dirname(__FILE__) . "/aspro_regions/robots/robots_{$hostname}.txt";
$robotsDefault = dirname(__FILE__) . "/robots.txt";

if(!echoTextFile($robotsHost) && !echoTextFile($robotsDefault))
{
header('HTTP/1.0 404 Not Found');
}
Ответ написан
Комментировать
igorux
@igorux
Если директивы в этих файлах одинаковые, то они (файлы) будут различаться только адресом sitemap.xml. Включите в .htaccess обработку txt как php и формируйте строку с адресом sitemap.xml, используя переменную HTTP_HOST.
Ответ написан
Комментировать
@FreeArcher
Senior 1С; php, JS Starter
Мы пользуемся такми модулем.
https://marketplace.1c-bitrix.ru/solutions/webfly....
Там на вкладке установка есть инструкция как htaccess настроить, но у нас редирект настроен в nginx, настроил хостер.
Надо будет скину, как сделано.
Ответ написан
Ваш ответ на вопрос

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

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