当前位置: 首页 > news >正文

Nginx 部署多个安全域名,多个服务【工作记录】

以下是本人通过Docker 部署的Nginx挂载出来的文件目录
在这里插入图片描述
先看下 nginx.conf 配置文件内容:如下
ps:当前文件就是安装后的初始内容,无修改。主要关注最后一行 include /etc/nginx/conf.d/*.conf;表示引入其他目录下的.conf配置文件;

user  nginx;
worker_processes  auto;error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;events {worker_connections  1024;
}http {include       /etc/nginx/mime.types;default_type  application/octet-stream;log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log  /var/log/nginx/access.log  main;sendfile        on;#tcp_nopush     on;keepalive_timeout  65;#gzip  on;include /etc/nginx/conf.d/*.conf;
}

既然已经定义了可以引入其他路径下的配置文件,那么我们就可以将我们需要部署的多个域名、多个服务的配置分开存放;进入到 conf.d 目录内,如下:
在这里插入图片描述
分别看下并解释下配置文件的内容

base.conf 基础配置

server {# 监听80端口listen 80;#  指令定义了服务器块要处理的2个域名 用空格分开server_name xxxxxx.cn xxxx.xxxx.com;#  如果访问了server_name 中配置的域名,那么将重定向到 安全域名#  例如 在浏览器 输入了 xxxx.cn , 那么浏览器将直接将你的访问地址改为https://xxxx.cn return 301 https://$host$request_uri;
}

stokc.conf 域名一的配置

server {# listen       80;# server_name  localhost;# SSL 默认访问端口号为 443listen 443 ssl;# 请填写绑定证书的域名server_name xxxx.cn;# 请填写证书文件的相对路径或绝对路径ssl_certificate /etc/nginx/sslSign/xxxx.cn_nginx/xxxx.cn_bundle.crt;# 请填写私钥文件的相对路径或绝对路径ssl_certificate_key /etc/nginx/sslSign/xxxx.cn_nginx/xxxx.cn.key;ssl_session_timeout 5m;# 请按照以下协议配置ssl_protocols TLSv1.2 TLSv1.3;# 请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on;location / {root   /home/ruoyi/projects/ruoyi-ui/dist;try_files $uri $uri/ /index.html;index  index.html index.htm;}location /prod-api/ {proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 负载均衡服务地址proxy_pass http://stockserver/;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}

yunlv.conf 域名二的配置

server {listen 443 ssl;server_name  xxxx.xxxx.cn;client_max_body_size 10m;# 请填写证书文件的相对路径或绝对路径ssl_certificate /etc/nginx/sslSign/yunlvceshi/xxxx.xxxx.cn_bundle.crt;# 请填写私钥文件的相对路径或绝对路径ssl_certificate_key /etc/nginx/sslSign/yunlvceshi/xxxx.xxxx.cn.key;ssl_session_timeout 5m;# 请按照以下协议配置ssl_protocols TLSv1.2 TLSv1.3;# 请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on;location / {root  /home/workData/frontDesk_PC/dist;try_files $uri $uri/ /index.html;index  index.html index.htm;}location /api/ {proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://yunlvserver/;}location /api/wsMsg/anno/OrderMsg/ {proxy_pass http://yunlvserver/;proxy_set_header Host $host;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;# 增加 WebSocket 超时设置proxy_connect_timeout 12h; # 连接超时时间,设置为1小时proxy_read_timeout 12h;    # 读取超时时间,设置为1小时}#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;}
}

stream.conf 负载均衡配置

upstream yunlvserver{server xxx.xxx.xxx.xx:8090;server xxx.xxx.xxx.xx:8091;
}upstream stockserver{server xxx.xxxx.xxx.xx:8081;server xxx.xxxx.xxx.xx:8082;
}

配置好后重启nginx即可!
over…

http://www.lryc.cn/news/213644.html

相关文章:

  • 性能测试QPS+TPS+事务基础知识分析
  • PSP - 蛋白质复合物 AlphaFold2 Multimer MSA Pairing 逻辑与优化
  • C++中vec.size()-1的坑
  • Flask Shell 操作 SQLite
  • Mybatis—XML配置文件、动态SQL
  • excel求差公式怎么使用?
  • 高效分割分段视频:提升您的视频剪辑能力
  • 【c++|opencv】二、灰度变换和空间滤波---2.直方图和均衡化
  • 【Windows】线程同步之信号量(Semaphores)
  • 二叉树问题——前中后遍历数组构建二叉树
  • Java保留n位小数的方法(超简洁)
  • JavaEE-博客系统1(数据库和后端的交互)
  • 【unity/vufornia】Duplicate virtual buttons with name.../同一个ImageTarget上多个按钮失灵
  • Apache ActiveMQ 远程代码执行漏洞复现(CNVD-2023-69477)
  • 项目管理-科学管理基础-线性规划介绍及例题
  • 如何利用自定义数据对象(元数据)实现全场景身份数据治理
  • 腾讯云轻量级服务器哪个镜像比较好?
  • SC密封件的材料成分
  • 常用 sqlite3 命令
  • SpringMVC Day 08 : 文件上传下载
  • 【热带气旋】基本介绍:定义、标准、结构等
  • ue5 右击.uproject generator vs project file 错误
  • 0X01
  • centos7 配置搭建 wordpress 博客
  • 掌握Android自定义View与独家优化技巧
  • 【T3】彻底关闭服宝
  • P2359 三素数数 , 线性dp
  • 【c语言】用C语言设计一个环形缓冲区。当环形缓冲区有一半占用未处理时,提示使用了50%.
  • Python的web自动化学习(四)Selenium的显性等待(元素定位)
  • X3DAudio1_7.dll是什么,解决计算机找不到X3DAudio1_7.dll文件的方法