У меня есть правило перезаписи, которое меняет переменную сервера на значение субдомена.Это работает на subdomain.mydomain.nl/somethinghere, но не на subdomain.mydomain.nl
<rule name="Change code" enabled="true" patternSyntax="ECMAScript" stopProcessing="false">
<match url=".*" ignoreCase="true" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="true">
<add input="{SERVER_NAME}" pattern="(www\.)?(\w+)\.mydomain\.nl" />
<add input="{SERVER_NAME}" pattern="^www.mydomain.nl.*" negate="true" />
<add input="{SERVER_NAME}" pattern="^mydomain.nl.*" negate="true" />
</conditions>
<serverVariables>
<set name="MYVARIABLE" value="{C:2}" />
</serverVariables>
<action type="None" />
</rule>
Я проверил 2 URL: 1: subdomain.mydomain.nl/somethinghere 2: subdomain.mydomain.nl
Я получаю переменную в PHP со следующим кодом:
echo $_SERVER['MYVARIABLE'];
В случае URL-адреса 1 выводится «subdomain».
В случае URL-адреса2, это вывод "".
Вывод URL 1 правильный, но вывод URL 2 тоже должен быть "subdomain".
Я выполнил трассировку обоихзапросы, и они оба показывают, что правило сопоставляется и выполняется.
Кто-нибудь может мне помочь?