Как исключить каталог с перезаписью URL IIS?
У меня есть domain.com/index.php и дружеское правило для перенаправления domain.com/index.php?s=? Запросы. Я использую веб-сервер IIS с надстройкой перезаписи URL.
Выше работает отлично. Тем не менее, есть проблема с запросами в каталог администратора ...
У меня также есть domain.com/admin/cloud/index.php, который иногда необходим для получения или отправки данных (через Ajax). Когда правило активно, данные недоступны, когда я удаляю указанное выше правило, данные становятся доступными.
Как я могу использовать вышеупомянутое правило URL и исключить все другие запросы внутри (или к) domain.com/admin/ ..?
Это мой текущий набор правил:
<rule name="RedirectUserFriendlyURL1" stopProcessing="true">
<match url="^index\.php$" />
<conditions>
<add input="{REQUEST_METHOD}" pattern="^POST$" negate="true" />
<add input="{QUERY_STRING}" pattern="^s=([^=&]+)$" />
</conditions>
<action type="Redirect" url="{C:1}" appendQueryString="false" />
</rule>
<rule name="RewriteUserFriendlyURL1" stopProcessing="true">
<match url="^([^/]+)/?$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php?s={R:1}" />
</rule>
Я пробовал много способов, включая информацию о пути ... но безуспешно. Может быть, кто-то может дать подсказку?
Спасибо!