0
我有一个关于NGINX反向代理和不同应用程序的问题。NGINX和两个反应应用程序
这里是我的nginx的配置
server {
listen 443 ssl http2;
listen 80;
server_name example.com;
resolver 8.8.4.4 8.8.8.8 valid=300s;
resolver_timeout 10s;
ssl_stapling on;
ssl_stapling_verify on;
ssl_certificate /etc/ssl/private/fullchain.pem;
ssl_certificate_key /etc/ssl/private/privkey.pem;
ssl_trusted_certificate /etc/ssl/private/chain.pem;
ssl_dhparam /etc/pki/nginx/dhparam.pem;
# Set up preferred protocols and ciphers. TLS1.2 is required for HTTP/2
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!aNULL:!ADH:!AECDH:!MD5;
# ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;
# This is a cache for SSL connections
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 60m;
access_log off;
if ($http_user_agent ~* (nmap|nikto|wikto|sf|sqlmap|bsqlbf|w3af|acunetix|havij|appscan)) {
return 444;
}
location/{
proxy_pass http://site;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
proxy_buffering 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;
}
location /acc {
proxy_pass http://acc;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
proxy_buffering 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;
}
}
所以我的问题是如何为后面的反向代理的两个不同阵营的应用程序。
我需要为根路径上的第一个应用 - /和第二个应用/acc路径。
对于现在的第一个应用程序按预期工作。但第二个应用程序不起作用,因为它通过根路径/路由。
P.S. URL的http://site和http://acc看起来这样,因为我使用码头。
任何帮助表示赞赏。
你可以尝试改变''位置'指令的顺序,首先按顺序检查'/ acc'。 – Panther
@Panther它不起作用 –