8 800 500-47-11
8 800 500-47-11
Отдел продаж
База знаний
  • Все решения
  • Интернет-магазины
    • Аспро: Премьер
    • Аспро: Лайтшоп
    • Аспро: Максимум
    • Аспро: Шины и диски 2.0
    • Аспро: Next
    • Аспро: Оптимус
    • Аспро: Шины и диски, интернет-магазин
    • Аспро: Маркет
    • Аспро: Интернет-магазин
    • Аспро: Крутой шоп
  • Корпоративные сайты
    • Аспро: Приорити 2.0
    • Аспро: Корпоративный сайт 3.0
    • Аспро: Корпоративный сайт 2.0
    • Аспро: Стройка 2.0
    • Аспро: Инжиниринг
    • Аспро: Металл
    • Аспро: Digital 2.0
    • Аспро: Детский сад и образовательный центр
    • Аспро: Курорт 2.0
    • Аспро: Ландшафт 2.0
    • Аспро: Автосервис
    • Аспро: Медицинский центр 3.0
    • Аспро: Ландшафт
    • Аспро: Медицинский центр 2.0
    • Аспро: Курорт
    • Аспро: Стройка
    • Аспро: Сайт медицинского центра
    • Аспро: Корпорация
    • Аспро: Корпоративный сайт
    • Аспро: Корпоративный сайт современной компании
    • Аспро: Приорити
    • Аспро: Digital
  • Модули
    • Аспро: Привязка ответственного
    • Аспро: Шинный калькулятор
    • Аспро: Кредитный калькулятор
    • Аспро: Универсальный импорт
  • 1С-Битрикс
    • Общее

Не меняются региональные sitemap

ID статьи: 415 , создана 16 дек 2020
Актуально для:
Не меняется региональные sitemap в режиме многосайтовости при переходе на поддомены.

Решение

В файле sitemap неверно подставляется домен. 


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


Найдите файл с названием .htaccess и перейдите к его редактированию.


Проверьте наличие этих трех правил:


# ASPRO_SITEMAP_sitemap_files Serve sitemap.xml with sitemap.php only if the latter exists
RewriteCond %{REQUEST_FILENAME} sitemap_files.xml
RewriteCond %{DOCUMENT_ROOT}/sitemap_files.php -f
RewriteRule ^(.*)$ /sitemap_files.php [L]

# ASPRO_SITEMAP_sitemap Serve sitemap.xml with sitemap.php only if the latter exists
RewriteCond %{REQUEST_FILENAME} sitemap.xml
RewriteCond %{DOCUMENT_ROOT}/sitemap.php -f
RewriteRule ^(.*)$ /sitemap.php [L]

# ASPRO_ROBOTS Serve sitemap.xml with sitemap.php only if the latter exists
RewriteCond %{REQUEST_FILENAME} robots.txt
RewriteCond %{DOCUMENT_ROOT}/robots.php -f
RewriteRule ^(.*)$ /robots.php [L]


Если таких правил нет или отсутствует одно из них, нужно добавить его перед соответствующим блоком кода. Добавлять правила следует через панель управления хостингом или через FTP.


Сохраните изменения. 

Как изменить карту сайта при использовании Nginx

Существует 2 варианта:

  1. Подключить обработку файлом .htaccess, если есть такая возможность.

  2. Если настроена быстрая отдача файлов txt и xml или если обработка .htaccess отключена, стоит указать дополнительные правила перенаправления для Nginx.

Рассмотрим подробнее 2-й вариант.

По умолчанию, конфигурационный файл называется nginx.conf и расположен в каталоге /usr/local/nginx/conf, /etc/nginx или /usr/local/etc/nginx.

Для VMBitrix файл пользовательских правил расположен /etc/nginx/bx/site_settings/ваш_сайт/bx_temp.conf.

В файле в секции server {...} пропишите правила:

 location = /robots.txt {
          rewrite ^(.*)$ /robots.php;
 }
 location ~* /sitemap(.*)\.xml {

          rewrite ^/sitemap(.*)\xml$ /sitemap$1.php;
 }

Также для sitemap.xml есть альтернативное правило: 

 location ^~ /sitemap {
          proxy_pass $proxyserver;
          rewrite ^/sitemap(.*)\.xml$ /sitemap$1.php;
 }


Андрей Рабой
03.12.2025 14:40:08
Подмена sitemap работала исправно на разных доменах. robots.txt не подменялся, отдавался общий из корня.
Правила в .htaccess были и вроде правильные.
Помогло только удаление файла (переименовал -----robots.txt) и начало отдавать разные файлы на поддоментах.
Может кому-то будет полезно. Может кто-то подскажет почему так.
Денис
08.12.2022 07:43:24
Региональный sitemap только подменяет домены? Он не может исключать из sitemap элементы, которые не привязаны к региону? Скажем, новость или товар не привязанные к региону - они всё равно включатся в sitemap этого региона?
Владислав Мещеряков
09.12.2022 15:50:06

Здравствуйте, Денис! Благодарим за интересный вопрос.

Сейчас sitemap действительно меняет только домен. В будущем планируем добавить и учет регионального фильтра. Зафиксировали задачу под номером MAX-3823. Реализуем в одном из обновлений. Всего доброго!

Родитель
Дмитрий
03.05.2024 11:49:19
Шок! Это настолько важная штука... А вы её до сих пор не сделали.
Ссылки отдают 404 же в карте из за этого.  
Родитель
Владислав Мещеряков
06.05.2024 16:16:43

Дмитрий, здравствуйте! Благодарим за комментарий.

Понимаем, что учет регионального фильтра при формирования sitemap важен для вас. Задачу мы пока не закрыли, так как собираем обратную связь пользователей. Обязательно реализуем функционал в будущих обновлениях.

Желаем хорошего дня!

Родитель
Валерий
20.04.2022 19:31:24
А в Ngnix как это исправить?  
Анастасия Егорова
22.04.2022 11:07:33

Здравствуйте! В теории есть два варианта исправления:

1. Вы можете подключить обработку файлом .htaccess. Но как показывает практика, этот вариант нравится не всем.

2. Вы можете переписать правила из файла .htaccess для Ngnix. Обычно этим занимается сисадмин или сам хостинг-провайдер.

Благодарим вас за активность. Ради вас мы изучим эту проблему подробнее. Может быть пропишем отдельную статью для сценария работы с Ngnix. Будем на связи :)

Родитель
Антон
02.06.2022 11:16:37
В Ngnix это будет выглядеть так
location /sitemap.xml {
    rewrite ^(.*)$ /sitemap.php;
}

location ~* /sitemap.+\.xml {
    rewrite ^/sitemap(.*)\.xml$ /sitemap$1.php;
}

location = /robots.txt {
    allow all;
    log_not_found off;
    access_log off;
    rewrite ^(.*)$ /robots.php;
}
Родитель
Анастасия Егорова
03.06.2022 13:13:18

Здравствуйте. Благодарим, что поделились своим опытом. Наши программисты позже проверят ваш вариант кода.

Наши клиенты часто кастомизируют решение под свои нужды. Но мы всегда рекомендуем обращаться или консультировать со специалистами. Поэтому призываем пользователей всегда делать резервную копию и проверять код перед внесением изменений.

Хорошего вам дня!

Родитель
Михаил
17.12.2020 16:52:01
Данные правила есть, но robots.txt и sitemap.xml не меняются. Как починить?
Яна Евстигнеева
24.12.2020 15:09:54

Здравствуйте, Михаил!

Спасибо за комментарий! Пожалуйста, напишите по этому вопросу в техподдержку:

https://aspro.ru/support/ 
Разберемся в ситуации.
Родитель