nginx: map по $uri (декодированному) для cyrillic legacy-slugs
Some checks failed
deploy / deploy (push) Failing after 9s
Some checks failed
deploy / deploy (push) Failing after 9s
This commit is contained in:
@@ -3,8 +3,9 @@
|
|||||||
# v2 cutover: 2026-05-21 (старый WP на :4143 оставлен в /opt/docker/sites/pushkinohistory-ru как backup для отката)
|
# v2 cutover: 2026-05-21 (старый WP на :4143 оставлен в /opt/docker/sites/pushkinohistory-ru как backup для отката)
|
||||||
|
|
||||||
# 301-редиректы со старых URL-encoded WP-cyrillic slugs на новые транслитерированные.
|
# 301-редиректы со старых URL-encoded WP-cyrillic slugs на новые транслитерированные.
|
||||||
# nginx URL-декодирует $request_uri до cyrillic, поэтому в ключах map'а — кириллица в UTF-8.
|
# $uri — URL-декодированный путь (UTF-8 cyrillic). $request_uri сохраняет percent-encoding,
|
||||||
map $request_uri $legacy_redirect {
|
# поэтому для cyrillic-slugs нужен именно $uri.
|
||||||
|
map $uri $legacy_redirect {
|
||||||
default "";
|
default "";
|
||||||
~^/добро-пожаловать/?$ /dobro-pozhalovat/;
|
~^/добро-пожаловать/?$ /dobro-pozhalovat/;
|
||||||
~^/фото/?$ /foto/;
|
~^/фото/?$ /foto/;
|
||||||
@@ -13,7 +14,6 @@ map $request_uri $legacy_redirect {
|
|||||||
# WP feed → новый Astro feed
|
# WP feed → новый Astro feed
|
||||||
~^/feed/?$ /feed.xml;
|
~^/feed/?$ /feed.xml;
|
||||||
~^/feed/rss2/?$ /feed.xml;
|
~^/feed/rss2/?$ /feed.xml;
|
||||||
~^/\?feed=rss2$ /feed.xml;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
server {
|
server {
|
||||||
|
|||||||
Reference in New Issue
Block a user