Sitemap.xml - 404 ошибка на Nginx
location /sitemap {
rewrite ^/sitemap(.*).xml$ /cache/static/sitemaps/sitemap$1.xml break;
}
В nginx.conf добавить
Лучше будет добавить в site.conf
А куда ее? Чет не получается (В nginx.conf добавить
добавляется в тот же конфиг где описывали для HTTPSlocation /sitemap {
rewrite ^/sitemap(.*).xml$ /cache/static/sitemaps/sitemap$1.xml break;
}
nginx.ru/ru/docs/beginners_guide.html
Определив, какой server будет обрабатывать запрос, nginx сравнивает URI, указанный в заголовке запроса, с параметрами директив location, определённых внутри блока server.
В блок server добавьте блок location следующего вида:
location / {
root /data/www;
}
Этот блок location задаёт “/” в качестве префикса, который сравнивается с URI из запроса. Для подходящих запросов добавлением URI к пути, указанному в директиве root, то есть, в данном случае, к /data/www, получается путь к запрашиваемому файлу в локальной файловой системе. Если есть совпадение с несколькими блоками location, nginx выбирает блок с самым длинным префиксом. В блоке location выше указан самый короткий префикс, длины один, и поэтому этот блок будет использован, только если не будет совпадения ни с одним из остальных блоков location.
Так и делал. А после чего ставить, имеет значение? Что должно быть рядом?
AndroS, вам ответил ХурумБурум, это добавление обычных location описание разделов сайта
добавляется в тот же конфиг где описывали для HTTPSlocation /sitemap {
rewrite ^/sitemap(.*).xml$ /cache/static/sitemaps/sitemap$1.xml break;
}
ps посмотрел получается site/sitemap.xml соответственно правило location /sitemap именно в адресе не верно. т.е. надо просто
типа
location ~ ([^/]*)sitemap(.*)\.xml$ {
rewrite ^/sitemap(.*).xml$ /cache/static/sitemaps/sitemap$1.xml break;
}
должно помочь, под рукой нет сервака проверить.
Огромное спасибо, помогло! Тему закрываю!location ~ ([^/]*)sitemap(.*)\.xml$ {
rewrite ^/sitemap(.*).xml$ /cache/static/sitemaps/sitemap$1.xml break;
}