Как разрешить смешанный контент, который был загружен по HTTPS, но запросил небезопасный ресурс - PullRequest
0 голосов
/ 29 мая 2020

Я пытаюсь запустить приложение React / NodeJS с nodejs и настройкой клиента. У меня все работает нормально локально с использованием Docker / docker -compose. Но когда я развертываю его на AWS ECS, я получаю следующую ошибку:

apiRequest.js:52 Mixed Content: The page at 'https://myAppUrl/auth/login' was loaded over HTTPS, but requested an insecure resource 'http://0.0.0.0:4000/auth/login'. This request has been blocked; the content must be served over HTTPS.

Docker -compose file

version: "3"
services:
  client:
    image: docker-registry:dev-test7

api:
  image: docker-registry:dev-test4
  ports:
    - "4000:4000"

nginx:
  image: docker-registry:nginx:dev-test5
  ports:
    - "80:80"
  depends_on:
    - client
    - api

Nginx default.conf

upstream client {
 server 0.0.0.0:3000;
}
upstream api {
  server 0.0.0.0:5000;
}
server {
  listen 80;
  location / {
    proxy_pass http://client;
    proxy_redirect off;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Host $server_name;
  }
  location /api {
    rewrite /api/(.*) /$1 break;
    proxy_pass http://api;
  }
}

Приложение отлично развертывается в AWS ECS и отлично работает локально с docker -compose up. Я подумал, что, поскольку приложение вызывает nodejs api локально, ему не нужно использовать https. Я пробовал много разных вариантов URL, например, с использованием домена или IP, но все еще не работает

...