После введения ALB (Application Load Balancer на AWS) перед одним экземпляром EC2 браузер Chrome показывает ошибку смешанного содержимого. (Я немного отредактировал содержание ошибки по соображениям безопасности)
Mixed Content: The page at 'https://www.sample.com/talk' was loaded
over HTTPS, but requested an insecure EventSource endpoint
'http://www.sample.com/api/getData?param1=123¶m2=456'. This
request has been blocked; the content must be served over HTTPS.
Pattern1 не имеет ошибок.
Pattern2 показывает вышеуказанную ошибку. Я не знаю, где проблема в моем технологическом стеке.
Pattern1: ALB(443) => EC2(443)
Pattern2: ALB(443) => EC2(80)
Мой технический стек:
ALB
Apache 2.4
Laravel 5.7
React 16.9
Я попробовал следующее решение, но ошибка все еще произошла.
- Доверительный прокси Laravel.
- HTTP-запрос к серверу от React записывается как относительный путь (/ api / getData? Param1 = 123¶m2 = 456), поэтому я заменяю код на абсолютный путьуказание протокола и имени домена (https://www.sample.com/api~).
- На веб-сервере Apache переписать http на https (я думаю, что это плохая идея).
Это общая проблема?
Если у вас есть какие-либо советы, пожалуйста, помогите мне.
Извините за мой плохой английский.