Расширения файлов фильтрации запросов IIS разрешают каталог с точкой

Мы используем фильтрацию запросов для расширений файлов в нашем web.config следующим образом:

<fileExtensions allowUnlisted="false">
    <add fileExtension="." allowed="true" />
    <add fileExtension=".aspx" allowed="true" />
    <add fileExtension=".ashx" allowed="true" />
    <add fileExtension=".asmx" allowed="true" />
    <add fileExtension=".axd" allowed="true" />
    <add fileExtension=".html" allowed="true" />
    <add fileExtension=".htm" allowed="true" />

Однако мы столкнулись с проблемой. Когда мы перейдем к URL-адресу каталога с точкой в ​​нем, например, https://localhost/myamazing.folder, он вернет ошибку HTTP 404.7 — Not Found, поскольку теперь считает, что это расширение не разрешено.

Когда для параметра allowUnlisted установлено значение true или без какой-либо фильтрации, iis выполнит вежливое перенаправление, поскольку это папка. Есть ли способ сохранить это поведение перенаправления без изменений, продолжая фильтровать расширения?


person Rutger    schedule 21.10.2020    source источник
comment
Из-за приоритета фильтрации запросов в конвейере IIS не существует простого решения. Чтобы получить доступ к такой папке, URL-адрес должен заканчиваться на /, например https://localhost/myamazing.folder/.   -  person Lex Li    schedule 21.10.2020


Ответы (1)


Это параметр безопасности iis по умолчанию, если вы хотите разрешить неуказанное расширение, которое вам нужно включить, используя

другой способ установить разрешение расширения имени файла, а затем установить разрешающий URL-адрес, выполнив следующий шаг:

На вкладке URL разрешите список URL-адресов-›добавьте URL-адрес, который вы хотите разрешить. вот как он будет перенаправлять URL-адрес /myamazing.folder на /myamazing.folder/

введите здесь описание изображения

если вы используете сайт asp.net mvc, вы можете обратиться по ссылке ниже:

Точки в URL вызывают ошибку 404 с ASP.NET mvc и ИИС

person Jalpa Panchal    schedule 26.10.2020