В настоящее время я помогаю в переходе старой CMS на новую CMS. В рамках этого у нас есть много переадресаций для настройки.
Мы решили загрузить их в файл .htaccess, чтобы их можно было легко контролировать по версии и изменять не администраторам.
Файл выглядит так:
Redirect 301 /product-123.aspx /product-123.html
Redirect 301 /product-456.aspx /product-456.html
Однако я натолкнулся на недокументированное и неожиданное поведение - перенаправление 301 соответствует подстрокам. Например, учитывая это правило:
Redirect 301 /page /page.html
Он переписывает /page -> page.html, как и ожидалось, но также переписывает /page /2 -> /page.html/2 и /page /contact -> /page.html/contact, что вызвало много неожиданных крайних случаев.
Есть ли обходной путь или способ отключить это поведение? Или, если это поведение не может быть отключено, что является лучшим альтернативным методом?