From af792a86eebb90b68a6886c82213d889300e8da4 Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Thu, 4 Jan 2024 13:49:34 +0800 Subject: [PATCH] =?UTF-8?q?docker-nginx=EF=BC=9A=E4=BF=AE=E6=94=B9nginx?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker/nginx/docs/conf.d/default.conf | 57 +++++++++++++++++++++------ docker/nginx/docs/conf.d/https.conf | 49 ++++++++++++++++++----- 2 files changed, 83 insertions(+), 23 deletions(-) diff --git a/docker/nginx/docs/conf.d/default.conf b/docker/nginx/docs/conf.d/default.conf index 64de41a7..a82fdb98 100644 --- a/docker/nginx/docs/conf.d/default.conf +++ b/docker/nginx/docs/conf.d/default.conf @@ -1,14 +1,18 @@ - # 定义web服务地址 - upstream virtual-patient-web{ - server 192.168.10.138:8799; - } +# 前台服务后端地址,多个地址可用与负载均衡 +upstream web_servers { + server 192.168.10.138:8899; +} + +#后管服务后端地址 +upstream manage_servers { + server 192.168.10.138:8891; +} server { listen 80; listen [::]:80; server_name localhost; - #access_log /var/log/nginx/host.access.log main; client_max_body_size 20M; # 设置客户端请求的最大上传大小为 20MB,可以根据实际情况修改 @@ -21,20 +25,47 @@ server { index rasa.html rasa.htm; } + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html/dist; + } + + # 前台后端服务 location /virtual-patient/ { - proxy_pass http://virtual-patient-web/virtual-patient/; + proxy_pass http://web_servers/virtual-patient/; proxy_set_header Host $http_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; } - #error_page 404 /404.html; - # redirect server error pages to the static page /50x.html - # - error_page 500 502 503 504 /50x.html; - location = /50x.html { - root /usr/share/nginx/html/dist; + # 前台文件服务代理到后管 + location /virtual-patient/fileManage/ { + proxy_pass http://manage_servers/virtual-patient-manage/fileManage/; + proxy_set_header Host $http_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; + } + + # websocket 代理服务 + location /virtual-patient-websocket/ { + proxy_pass http://web_servers/virtual-patient/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + 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; + } + + # 后管后端服务 + location /virtual-patient-manage/ { + proxy_pass http://manage_servers/virtual-patient-manage/; + proxy_set_header Host $http_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; } -} +} \ No newline at end of file diff --git a/docker/nginx/docs/conf.d/https.conf b/docker/nginx/docs/conf.d/https.conf index 6410e725..31c409f6 100644 --- a/docker/nginx/docs/conf.d/https.conf +++ b/docker/nginx/docs/conf.d/https.conf @@ -1,5 +1,3 @@ - # 定义web服务地址 - server { listen 443 ssl; server_name example.com; @@ -33,17 +31,48 @@ server { root /usr/share/nginx/html/; index rasa.html rasa.htm; } + + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html/dist; + } + # 前台后端服务 location /virtual-patient/ { - proxy_pass http://virtual-patient-web/virtual-patient/; + proxy_pass http://web_servers/virtual-patient/; + proxy_set_header Host $http_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; + } + + # 前台文件服务代理到后管 + location /virtual-patient/fileManage/ { + proxy_pass http://manage_servers/virtual-patient-manage/fileManage/; + proxy_set_header Host $http_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; } - #error_page 404 /404.html; - # redirect server error pages to the static page /50x.html - # - error_page 500 502 503 504 /50x.html; - location = /50x.html { - root /usr/share/nginx/html/dist; + # websocket 代理服务 + location /virtual-patient-websocket/ { + proxy_pass http://web_servers/virtual-patient/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + 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; } + + # 后管后端服务 + location /virtual-patient-manage/ { + proxy_pass http://manage_servers/virtual-patient-manage/; + proxy_set_header Host $http_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; + } -} \ No newline at end of file +}