1、Nginx路径配置
- 如下请求地址:http://x.x.x.x:8080/api/base/test
此时 zo-java这个应用接收到的地址是:
http://x.x.x.x:8080/api/base/test
location /api/base {
proxy_pass http://zo-java;
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 $http_host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Proto $scheme;
}
- 如下请求地址:http://x.x.x.x:8080/api/base/test
此时 zo-java这个应用接收到的地址是:
http://x.x.x.x:8080/test
location /api/base/ {
proxy_pass http://zo-java/;
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 $http_host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Proto $scheme;
}
2、nginx ssl及http自动跳转到https配置
nginx 1.18.0版本:
server {
server_name www.xxxx.com xxxx.com;
listen 443 ssl http2;
ssl_certificate /home/cert/xxxx.pem;
ssl_certificate_key /home/cert/xxxx.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
listen 80;
error_page 497 https://$host$request_uri;
location / {
proxy_pass http://web-home;
proxy_set_header Host $host:$server_port;
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;
proxy_redirect http:// https://;
}
}
2、允许跨域访问
server {
server_name xxxxx.com;
listen 443 ssl http2;
ssl_certificate /home/cert/xxxxx.pem;
ssl_certificate_key /home/cert/xxxxx.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
listen 80;
error_page 497 https://$host$request_uri;
location / {
proxy_pass http://web-home;
proxy_set_header Host $host:$server_port;
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;
proxy_redirect http:// https://;
set $cross_origin "";
if ($http_origin ~* "^https://a.com$") {
set $cross_orgin $http_origin;
}
if ($http_origin ~* "^https://b.com$") {
set $cross_orgin $http_origin;
}
if ($http_origin ~* "^https://c.com$") {
set $cross_orgin $http_origin;
}
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' $cross_orgin;
add_header 'Access-Control-Max-Age' 600;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Access-Control-Allow-Headers' 'DNT,web-token,app-token,Authorization,Accept,Origin,Keep-Alive,User-Agent,X-Mx-ReqToken,X-Data-Type,X-Auth-Token,X-Requested-With,credential,X-XSRF-TOKEN,If-Modified-Since,Cache-Control,Content-Type,Range,token,tenant,userId,username,client' always;
add_header 'Content-Length' 0;
return 204;
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)