Я попытался с помощью этого web.config (IIS-8):Как перенаправить браузер на номер новой версии (каталог) по URL-адресу в IIS-8 web.config?
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<staticContent>
<mimeMap fileExtension=".woff2" mimeType="font/woff2" />
</staticContent>
<rewrite>
<rules>
<rule name="Old version to new" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^help\.mysite\.com\/1\.2\/(.*)" />
</conditions>
<action type="Redirect" url="http://help.mysite.com/1.3/{R:1}" redirectType="Permanent" appendQueryString="true" />
</rule>
</rules>
</rewrite>
...
</system.webServer>
</configuration>
Эта конфигурация производит 500 ошибки при попытке загрузить любую часть сайта.
Я хочу обновить только номер версии в URL-адресе, чтобы каждый мог продолжить контент, к которому они пытались получить доступ, только с более новой версией. Полная ссылка может быть: http://help.mysite.com/1.2/Content/Widgets/installingWidgets.htm
В идеале, когда сервер начинает обслуживать эту страницу, вместо этого он применяет правила переадресации и клиент заканчивается:
http://help.mysite.com/1.3/Content/Widgets/installingWidgets.htm (наряду с любыми строками запросов, которые могут иметь присутствовали в первоначальном запросе)