У меня есть проект, в котором мы переделываем сайт для клиента, новый сайт использует umbraco на платформе .net. старый сайт был холодным синтезом.
Umbraco использует библиотеку urlrewriting.net, поэтому я создал все правила 301 recirect для старых URL-адресов холодного синтеза, но это вызывает бесконечный цикл.
<add name="r66" virtualUrl="^~/thing_info/index.cfm.D413249D-BCD8-304B-02CD-561DAC70641E$"
destinationUrl="~/about-us/award-winning-product" redirect="Application" redirectMode="Permanent" ignoreCase="true" />
Я знаю "." имеет особое значение, но работает достаточно хорошо, также я использовал "." для соответствия любому символу, включая "?" символ, начинающийся с строки запроса. если я зайду, попробуйте URL-адрес без строки запроса, например
http://staging.site/thing_info/index.cfm-D413249D-BCD8-304B-02CD-561DAC70641E
то меня правильно перенаправляют на
http://staging.site/about-us/award-winning-product
Однако, если я попробую URL-адрес (вопросительный знак - единственная разница)
http://staging.site/thing_info/index.cfm?D413249D-BCD8-304B-02CD-561DAC70641E
Затем я попадаю в цикл перенаправления на себя. (я проверил заголовок ответа)
Кто-нибудь знает, сделал ли я что-то не так или это ошибка в библиотеке urlrewriting.net? или как исправить проблему?