Вы можете исправить проблему HTTPS, используя HTTPS локально с самоподписанным сертификатом SSL. Heroku has a great how-to article about generating one.
После настройки SSL на всех серверах разработки вы по-прежнему получите ошибку при загрузке ресурса в Safari, поскольку используется ненадежный сертификат (самоподписанные SSL-сертификаты по умолчанию не проверяются браузерами, поскольку они не могут быть проверены с доверенным органом). Чтобы исправить это, вы можете загрузить проблемный URL-адрес на новой вкладке в Safari, и браузер предложит вам разрешить доступ. Если вы нажмете «Показать сертификат» в приглашении, в окне сведений о сертификатах появится флажок «Всегда разрешать контент с локального хоста». Проверяя это, прежде чем разрешить доступ, вы сохраните настройку в Safari в будущем. После разрешения доступа просто перезагрузите страницу, изначально проявляющую проблему, и вам должно быть хорошо идти.
Это действительный пример использования в качестве разработчика, но, пожалуйста, убедитесь, что вы полностью понимаете последствия и риски безопасности, которые вы добавляете в свою систему, внеся это изменение!
btw, чтобы обойти это, мы в настоящее время обслуживаем все активы через https. но не должно ли Safari разрешать использование смешанного контента? нет? – Staelen
Это очень неприятно. Есть законные причины, по которым необходимо, чтобы страница https загружала что-то (например, RPC или локальная служба). Apple не должна отключать поведение без возможности вернуть его. –
На самом деле это разумная мера предосторожности со стороны яблока. Предоставляя смешанный контент, кто-то может вводить вредоносный код или snoop в сеанс (если он был динамическим).Если вы беспокоитесь об эффективности использования SSL/TLS, просто добавьте поддержку HTTP/2 на ваш сервер. Тесты показывают значительное улучшение производительности, которое делает его так же быстро, как HTTP/1.1, когда вы получаете много активов или ajax из одного домена. –