Как обслуживать активы облачного фронта через https с рельсами на героку? - PullRequest
0 голосов
/ 12 января 2019

Я использую облачный фронт, чтобы обслуживать ресурсы для моего приложения rails на heroku. По http это работает нормально. Но когда я захожу на свой сайт через https, ресурсы не загружаются, и я получаю эту ошибку:

Mixed Content: The page was loaded over HTTPS, but requested an insecure stylesheet. This request has been blocked; the content must be served over HTTPS

То, что я пробовал:

  • Добавление https: // в начало URL в конфигурации rails.
  • Настройка политики протокола происхождения на https только в облачном фронте.
  • Установка стоек Cors.

1 Ответ

0 голосов
/ 12 января 2019

Попробуйте установить эту опцию

приложение / Config / окружающая среда / production.rb

# Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
config.force_ssl = true

config.action_controller.asset_host = "<YOUR DISTRIBUTION SUBDOMAIN>.cloudfront.net"

Документация в https://devcenter.heroku.com/articles/using-amazon-cloudfront-cdn#testing комментирует предупреждение об этом:

Если вы хотите обслуживать ресурсы Cloudfront с использованием SSL, вы можете просто используйте HTTPS в домене дистрибутива, предоставленного вам Amazon. Заметка, пока вы можете создавать CNAME для этой цели, обслуживая Cloudfront активы над вашим CNAME и SSL имеют прикрепленную стоимость.

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