Назад | Перейти на главную страницу

Перезапись IIS с использованием диспетчера IIS

Привет, я пытаюсь правильно переписать IIS, используя учетные данные диспетчера IIS, предоставленные мне моим хостинг-провайдером. У меня нет опыта в этом, и статьи, которые я читал в Интернете, пока не были слишком полезными.

Вот сценарий: у меня есть веб-сайт ASP.net MVC 5 (reallylongmaindomain.com, для удобства чтения), в который физически загружены файлы. Он защищен сертификатом SSL. Литература, которую мы раздаем, имеет более короткий домен (не домен с сокращенным URL-адресом), который мы будем называть shortdomain.com, который не есть какие-то файлы. Однако, если вы перейдете к shortdomain.com, вы получите ошибку несоответствия имени домена SSL (если быть точным, ERR_CERT_COMMON_NAME_INVALID). Этого мне нужно избегать.

Входит диспетчер IIS. Я успешно вошел в систему и добавил перезапись URL. У меня есть такое правило: (http(s)?://)?(www.)?shortdomain.com. Это обрабатывает любые http/https и / или www которые пользователь может ввести в адресную строку. Для свойств действия установлено значение «Перенаправление» (Постоянный 301), а для URL-адреса перенаправления установлено значение https://reallylongmaindomain.com, но я все еще получаю сообщение об ошибке сертификата SSL, а URL-адрес в окне все еще shortdomain.com.

Я уверен, что мне просто не хватает одной или двух простых вещей. Нужно ли мне также добавить правило в мой файл Web.Config? У меня создалось впечатление, что правила диспетчера IIS заменили правила Web.Config. РЕДАКТИРОВАТЬ: Правило было добавлено в мой web.config, вот оно:

    <rewrite>
        <rules>
            <rule name="site redirect" stopProcessing="true">
                <match url="(http(s)?://)?(www.)?shortdomain.com" />
                <action type="Redirect" url="https://reallylongmaindomain.com" />
            </rule>
        </rules>
    </rewrite>

Спасибо!

Оказывается, это то правило, которое я искал:

<rewrite>
    <rule name="redirect" stopProcessing="true">
        <match url=".*" />
        <conditions>
            <add input="{HTTP_HOST}" pattern="^(.*)?shortdomain.com" />                 
        </conditions>
        <action type="Redirect" url="https://reallylongmaindomain.com/{R:0}" />
    </rule>
</rewrite>

После применения этого правила переход к shortdomain.com отлично разрешается https://reallylongmaindomain.com.

Надеюсь, это поможет кому-то другому!