Перепишите путь, только если файл / папка не существует - PullRequest
11 голосов
/ 18 января 2011

Я использую модуль IIS Rewriter с моим web.config и хотел бы перенаправить определенные запросы на контент в подкаталог, только если нет фактической папки / файла, который уже соответствует запросу.Как я могу это сделать?

1 Ответ

25 голосов
/ 22 мая 2011

Немного поздно, но я собираюсь оставить здесь ответ для следующего человека, который найдет этот пост.

В основном вам нужно добавить пару условий в правило перезаписи.Пример:

<rule name="Remove trailing slash" stopProcessing="true">
    <match url="(.*)/$"/>
    <conditions>
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/>
    </conditions>
    <action type="Redirect" redirectType="Permanent" url="{R:1}" appendQueryString="true"/>
</rule>
...