Перенаправление с обходом точки (точка) и косой черты в URL
У меня есть один URL, который имеет./ [period & slash] в конце параметра. Я хочу перенаправить этот URL-адрес с другим местоположением, но он даже не обнаруживает в правилах. Я использую IIS. Я хочу настроить это на web.config
http://somesitename.com/mypage/teachers-manual./sku/8772
необходимо перенаправить на
http://somesitename.com/mypage/teachers-manual/sku/8772
Хотя я попробовал решение, данное здесь, но оно даже не работает. Но если я использую то же самое вместо Redirect с Rewrite, то правило начинает работать. Не уверен, почему это не работает для "Redirect".
<rule name="Trailing Dots and spaces" stopProcessing="true">
<match url="^mypage\/(.*)([\.\s]+)\/(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Rewrite" url="/index.cfm/{R:1}/{R:2}/{R:4}" appendQueryString="true" />
</rule>
На самом деле, когда я пытался написать правило, то URL, который с./ также не работает. [ http://somesitename.com/mypage/teachers-manual./sku/8772 ]
<rule name="Trailing Dots and spaces1.1" stopProcessing="true">
<match url="^(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="http://somesitename.com/newpage.html" />
</rule>
Не уверен, где это не так.
1 ответ
Только что получил больше информации о Post & Haacked Said. поэтому я изменил файл следующим образом, и теперь он отлично работает для меня.
<configuration>
<system.web>
<httpRuntime relaxedUrlToFileSystemMapping="true" />
</system.web>
<system.webServer>
<rewrite>
<rules>
<rule name="Trailing Dots and spaces1.1" stopProcessing="true">
<match url="^(.*)/(.*)\.\/(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>
<action type="Redirect" url="/{R:1}/{R:2}/{R:3}" appendQueryString="false" redirectType="Permanent" />
</rule>
</rules>
.... etc