Чистый способ изменяет только схему URL с http -> https и оставляет все остальное эквивалентным. Он должен быть на стороне сервера, чтобы не было проблем с браузером.
JPPinto.com имеет Пошаговые инструкции о том, как это делается, за исключением того, что они используют javascript (HttpRedirect.htm) вместо перенаправления на стороне сервера. По какой-то причине я не смог заставить IE запустить javascript, если у вас включен параметр «Показывать дружественные сообщения об ошибках HTTP», который включен по умолчанию. Еще одна вещь, связанная со сценарием, заключается в том, что перенаправление на путь не работает даже в FF или Chrome. Скрипт всегда перенаправляет в root. (Может быть, я что-то пропустил, потому что он должен перенаправить на путь.)
По этим причинам я использовал страницу ASP для перенаправления. Недостатком является то, что для этого на сервере должен быть включен классический ASP.
OpsanBlog имеет сценарий ASP и инструкции , которые хорошо работают с IIS6.
У меня было несколько проблем при использовании этого метода с IIS7. В основном проблемы с пользовательским интерфейсом, поскольку IIS7 позволяет легко что-то пропустить.
- Во-первых, вам нужно установить ASP как
функция роли веб-сервера.
- Во-вторых, использование виртуального каталога не
работать как ожидалось в IIS7, и я не сделал
попробуйте отладить это. Вместо этого я положил файл в корневую папку сайта и использовал
URL /SSLRedirect.asp в
Страница ошибки 403.4 для ссылки на нее.
- Наконец, самая сложная часть: вы НЕ должны применять SSL для SSLRedirect.asp . В противном случае вы получите ошибку 403,4. Для этого вы выбираете файл в «Представлении содержимого» IIS7 и переключаетесь в «Представление функций», чтобы можно было редактировать настройки SSL для отдельного файла и снять флажок «Требовать SSL».
Диспетчер IIS должен показывать имя файла в шапке.