Можете ли вы указать несколько прокси-серверов в качестве местоположения в конфигурации nginx?
У меня есть несколько веб-приложений, которые я предпочитаю проксировать с помощью одного URL-адреса. Это мой nginx.conf
server {
listen 443 ssl;
server_name webapps.mysite.com 192.168.5.28;
access_log /var/log/nginx/webapps_access.log;
error_log /var/log/nginx/webapps_errors.log;
ssl_certificate /etc/letsencrypt/live/webapps.mysite.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/webapps.mysite.com/privkey.pem; # managed by Certbot
location /casaos {
proxy_pass http://192.168.5.165:81;
proxy_intercept_errors on;
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
# access_log off;
}
location /guacamole/ {
proxy_pass http://192.168.5.44:8080;
proxy_intercept_errors on;
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
# access_log off;
}
location /apps {
# The following configurations must be configured when proxying to Kasm Workspaces
# WebSocket Support
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# Host and X headers
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-Proto $scheme;
# Connectivity Options
proxy_http_version 1.1;
proxy_read_timeout 1800s;
proxy_send_timeout 1800s;
proxy_connect_timeout 1800s;
proxy_buffering off;
proxy_intercept_errors on;
# Allow large requests to support file uploads to sessions
client_max_body_size 10M;
# Proxy to Kasm Workspaces running locally on 8443 using ssl
proxy_pass https://192.168.5.40;
}
}
Если я использую IP-адреса веб-приложений, они работают;
HTTP://192.168.5.165:81
HTTP://192.168.4.44:8080
HTTP://192.168.5.40
но в конфигурации моего сайта работает только сайт, где работает приложение гуакамоле.
HTTP://webapps.mysite.com/guacamole/
Другой дает мне 404.
HTTP://webapps.mysite.com/apps
HTTP://webapps.mysite.com/casaos
Как я могу устранить причину, по которой я получаю ошибку 404? Журналы мне тоже ничего не дают, я только пытаюсь получить доступ к своему сайту.
Еще одна вещь: если я проксирую только одну сеть в качестве /, они работают.
location / {
proxy_pass http://192.168.5.165:81;
proxy_intercept_errors on;
proxy_buffering off;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
# access_log off;
}
Меня снова беспокоит то, что я могу размещать несколько веб-приложений.