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

Изображения на сервере IIS не поддерживают протокол HTTPS

При использовании HTTPS-соединения мы получаем следующее предупреждение:

«Ваше соединение зашифровано с помощью 128-битного шифрования. Однако на этой странице есть и другие небезопасные ресурсы».

ПРОБЛЕМА: Мы сузили проблему до изображений на странице SSL. Если мы вставляем URL-адрес SSL в браузер, он перенаправляется на соединение НЕ-SSL.

EX: Мы вставляем " https: //www.example.com/images/checkout.gif "в браузер, и он немедленно перенаправляет на" http: //www.example.com/images/checkout.gif "

Мы используем следующие спецификации сервера:

Сервер: Windows Server 2003 Web Edition

Версия IIS: 6.0

Мы проверили настройки конфигурации, и все в порядке.

РЕДАКТИРОВАТЬ: Мы пробовали эту же проблему на локальном сервере, и перенаправление НЕ происходит. Используя плагин Firefox "HttpFox", мы увидели, что получаем 302 редирект с https на http на рабочем сервере. Когда мы выполнили тот же тест на локальном сервере, 302 редиректа не произошло. Проверка конфигураций IIS 6 на обоих серверах не показывает различий.

Оказывается, проблема была вызвана модулем SSL, о котором мы не знали. Рассматриваемый модуль был назван secureWebPages. Нам пришлось добавить дополнительные пути к компоненту, чтобы изображения, скрипты и стили также отображались как https. Мы изменили наш файл конфигурации с ...

<secureWebPages enabled="true" xdt:Transform="Insert">
  <directory path="/checkout" />
</secureWebPages>

чтобы ...

<secureWebPages enabled="true" xdt:Transform="Insert">
  <directory path="/images" ignore="true" />
  <directory path="/styles" ignore="true" />
  <directory path="/scripts" ignore="true" />
  <directory path="/checkout" />
</secureWebPages>

Требуется больше информации, так что, вероятно, пора разобраться с механизмом различий.

Возьмите средство веб-развертывания (MSDEPLOY) с сайта microsoft.com и создайте пакет на рабочем веб-сервере.

Затем выполните msdeploy -verb: sync с -whatif, чтобы сравнить пакет с prod-сервером и выявить различия в конфигурации.

Если нет разницы, они будут работать одинаково. Это не так, так что он есть, просто это не то место, куда вы до сих пор смотрели.