IE 8 Ошибка смешанного содержимого безопасности для HTTPS - PullRequest
1 голос
/ 03 ноября 2010

У меня есть веб-приложение (.NET 2.0, написанное на C #), которое отображает страницы как для зарегистрированных пользователей, так и для широкой общественности. Когда пользователь входит в систему, протокол переключается на HTTPS. Изображения отображаются с помощью файла CSS, находящегося в папке виртуального каталога. Проблема заключается в том, что при отображении HTTPS-страниц IE 8 отображает сообщение о том, что на странице смешанный контент безопасности. Я не хочу, чтобы пользователь отключал смешанный контент в своем браузере, скорее, то, что веб-приложение предоставит изображения через HTTPS, если участник вошел в систему.

Если бы изображения были в файле HTML, тогда было бы легко передать переменную сервера, указывающую протокол (HTTP или HTTPS), на страницу HTML. Однако как передать переменную сервера в CSS, указав протокол? Все пути в файле CSS являются относительными.

например. тело { шрифт: 12px Arial, Helvetica, без засечек; цвет: # 000000; background: # eadcc8 url (../ images / bg_top.gif ) без повтора 0 0; выравнивание текста: по центру; поле: 0px; }

Я не слишком знаком с функциональностью CSS, кроме цветов и стилей.

Спасибо за вашу помощь заранее.

1 Ответ

2 голосов
/ 03 ноября 2010

Где-то должен быть абсолютный путь. Посетите страницу https, посмотрите на ее источник и поищите в ней «http:». Если это не сработает, поищите его в файлах, которые он встраивает.

Изменить: Если это не работает для вас или вы считаете это слишком сложным, вы также можете использовать Google Chromes Developer Tools (вкладка "Ресурсы") для мониторинга всех запросов http.

...