NS_ERROR_CONNECTION_REFUSED ошибка reverse proxy nginx localhost
Мой nginx запущен в контейнере (docker compose), его внешний порт 8083, а внутренний 8088. И я пытаюсь обратиться от сервисного nginx (установлен через apt-get) к докер-изображению nginx
Если я выставляю
proxy_pass http://example.com:8083/
все в порядке, но когда я запрашиваю страницу по https https://example.com:8083/
, я получаю ошибку mixed content. Я также думаю, что это плохая практика и хотел бы использовать localhost.
Но если я устанавливаю proxy_pass http://127.0.0.1:8083
, firefox выдает мне ошибку NS_ERROR_CONNECTION_REFUSED. Хотя я могу успешно получить, например, стили через curl http://127.0.0.1:8083/style.css
.
GET-запрос идет не на example.com, а на 127.0.0.1:8083. Не знаю, нормально ли это. Где нарисовано - example.com. Ошибка в firefox
docker-compose.yml (nginx (service) image)
nginx:
image: nginx:1.25
restart: always
volumes:
- ./:/var/www
- ./.docker-compose/nginx:/etc/nginx/conf.d
ports:
- ${EXTERNAL_WEB_PORT:-8083}:8088
networks:
- client
depends_on:
- app
nginx (service)
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:8083/;
}
}
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/example.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
location / {
proxy_pass http://127.0.0.1:8083/;
}
}