7 октября 2009 г.

https и warning

В интернет-магазине есть страница, которая должна передаваться по защищённому соединению, т.е. по https. Если эта страница делает хотя бы один http запрос, Firefox ругается, что "content is partially encrypted", или что-то такое. Я проверил, что бы все запросы были только по https. И у меня на Win 7 никаких предупреждений не было. Но у других людей, на линуксе, на маке, и даже на той же семёрке, Firefox ругался.

Что за странное дело, для проверки я использовал плагины Firebug (вкладку Net), и Tamper Data, для отслеживания всех запросов, и все они были по https!

Потом я запустил Explorer (восьмой), и он сразу показал окошечко, мол, "на этой секурной странице есть несекурные запросы, выполнять только секурные запросы?". Ещё IE позволил посмотреть несекурные запросы. И тогда ошибка раскрылась.

В коде страницы был вызов одного и тоже js скрипта, но один вызов был по https, другой по http (именно в таком порядке). Видимо, FF не загружал повторно один и тот же скрипт. Сначала он загружал скрипт по https, что и было видно в Firebug'е. А со второй загрузкой, по http он, вёл себя "undefined" - у меня он не выдавал предупреждений о несекурности страницы, у других людей выдавал.

Вот так, не следует больше одного раза загружать на страницу одни и те же данные :) И, как ни странно, не стоит забывать про IE, он сэкономил мне много времени.

Комментариев нет:

Отправить комментарий