Использование IIS в Windows server 2012 R2.
У меня есть веб-сайт, доступный по адресу url.com
и www.url.com
.
У меня есть https://url.com
, настроенный с использованием https://letsencrypt.org/ .
Я хочу перенаправить все входящие запросы на https: / /url.com/{path}
То есть он должен обрабатывать
I добавил это правило перезаписи в webconfig.
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
</rule>
</rules>
</rewrite>
, и это работает для любого URL, такого как http://url.com/some
, но если я наберу https://www.url.com/s
, я получаю ошибка о том, что соединение небезопасно. То же самое произойдет, если я попробую http://www.url.com
Как мне это сделать?
Невозможно избежать запросов, поступающих на www.example.com и не получающих ошибку, так как перенаправления происходят "после" согласования SSL, и клиент запрашивает имя, для которого у вас нет сертификата.
Letsencrypt позволяет вам иметь один и тот же сертификат с несколькими именами. Поэтому вам придется это сделать, чтобы избежать жалоб со стороны клиентских браузеров или несовпадения имен в сертификате.
.проверьте имя субъекта и альтернативное имя субъекта в используемом SSL-сертификате .
похоже, что он действителен только для url.com, а не для www.url.com
вам необходимо упомянуть об этом при запросе сертификата
.