Назад | Перейти на главную страницу

IIS не соблюдает завершающую косую черту при перенаправлении

Я настроил перенаправление так, чтобы он указывал из любого корневого каталога на /racktables/. Когда я действительно иду в http://host/однако меня перенаправляют на http://host/racktables, который, конечно же, перенаправляет обратно на http://host/racktables до бесконечности.

Запись из web.config: <httpRedirect enabled="true" destination="/racktables/" exactDestination="true" childOnly="true" />

Можно ли заставить IIS точно соблюдать это перенаправление, или мне нужно будет создать перенаправление в документе по умолчанию в корне сайта? Похоже, это будет довольно серьезная оплошность со стороны Microsoft.

У меня была такая же проблема, и я решил ее, установив цель перенаправления (например) http://host/racktables/#. IIS не отключил мой бесполезный # и это сохранило /.

Пока ваше веб-приложение не захлебывается пустым хешем, оно должно работать и для вас.

Если вы посмотрите на модуль перезаписи URL-адреса, у него есть некоторые правила по умолчанию для принудительного применения или изменения URL-адреса. Два из них, о которых я знаю, преобразуют весь URL-адрес в нижний регистр, а другой добавляет косую черту в конце ко всем нефайловым запросам. Они существуют в основном для целей SEO, но в сочетании с тем, что у вас есть, могут «заменить» или дополнить вашу текущую настройку.