Импорт файла JS на странице https с использованием http URL в IE8 - PullRequest
1 голос
/ 22 апреля 2009

Кажется, что в IE8 если странице, использующей протокол https, необходимо импортировать файл .js, Файл .js также должен использовать протокол https.

<script type="text/javascript" src="http://xxx/yourjs.js"></script> 

работает во всех браузерах, кроме IE8

<script type="text/javascript" src="https://xxx/yourjs.js"></script> 

работает во всех браузерах

Я использую usercontrol, который импортирует несколько файлов .js. Это означает, что если на одной странице используется протокол https, мне придется изменить usercontrol, чтобы все импортированные файлы .js использовали протокол https.

Как вы решаете эту проблему?
Как вы прокомментируете это поведение IE8?

Ответы [ 3 ]

3 голосов
/ 22 апреля 2009

Использование этого по HTTPS

<script type="text/javascript" src="http://xxx/yourjs.js"></script>

должен выдавать предупреждение пользователю во всех браузерах - я бы ожидал, что IE8 будет делать то же самое, но, возможно, это новая «функция», чтобы игнорировать его.

Вы должны использовать тот же протокол, на котором включен запрос, или сбой, который всегда HTTPS (хотя это будет медленнее для пользователя и увеличит нагрузку на сервер).

Вы можете указать URL без схемы, которая должна использовать текущую (http или https):

<script type="text/javascript" src="//xxx/yourjs.js"></script>

Редактировать: Найдена ссылка, говорящая, что это действительно: RFC 2396

 relativeURI   = ( net_path | abs_path | rel_path ) [ "?" query ]

Относительная ссылка, начинающаяся с два символа косой черты называются
ссылка на сетевой путь, как определено в разделе 3. Такие
ссылки используются редко.

1 голос
/ 22 апреля 2009

Это правильное поведение. Вы не хотите, чтобы незащищенные ресурсы были частью вашей защищенной страницы. В предыдущих версиях IE отображалось предупреждение, но я полагаю, что такое ощущение, что слишком много людей просто сказали «продолжай», не зная, каковы были последствия. Ошибка теперь молчит. Вы можете настроить параметры безопасности, но это только исправит ваш браузер (и, как я уже говорил, это не очень хорошая идея).

Убедитесь, что все ресурсы вашей страницы защищены на ваших защищенных страницах. (Изображения, источники Iframe, сценарии ... много!)

0 голосов
/ 22 апреля 2009

Вы уверены, что это не связано с настройкой безопасности использования смешанного контента?

Возможно, стоит проверить настройки вашего браузера, чтобы увидеть, в какой зоне вы работаете.

Честно говоря, мне нравятся сайты, на которые я иду, чтобы они были согласованными, поэтому я бы хотел, чтобы ваши файлы javascript были получены через https.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...