nginx: map по $uri (декодированному) для cyrillic legacy-slugs
Some checks failed
deploy / deploy (push) Failing after 9s

This commit is contained in:
striker
2026-05-21 03:25:34 +03:00
parent 5dddb68803
commit 0e758f3a1a

View File

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