Nginx 配置多个SSL域名指向不同端口
Nginx 配置多个SSL域名指向不同端口
文章目录
- Nginx 配置多个SSL域名指向不同端口
- 前言
- 1、nginx 配置 多个http域名,多个项目
- 2、nginx 配置 多个SSL域名指向不同端口
- 3、nginx 配置 http域名主动跳转https域名
前言
提示:系统版本ubuntu 16.0.4,以下配置仅供参考
项目开发过程中,我们同一个服务器都会存放多个项目,每个项目都会有不同的域名地址,因此本文记录如何配置多个域名、多个ssl证书以及http域名自动跳转https域名问题。
说明:nginx配置文件每行具体是干嘛的就不做介绍了,配置文件的其他配置也不放了,直接介绍使用方法
1、nginx 配置 多个http域名,多个项目
代码如下(示例):server_name配置不同项目域名,通过不同代理跳转到指定项目路径
# 第一个项目server {listen 80;server_name www.abc.com; # 网址一location / {root html;index index.html index.htm;proxy_pass http://127.0.0.1:8081/; # 项目端口号}error_page 500 502 503 504 /upgrade.html;location = /upgrade.html {root html;}}# 第二个项目server {listen 80;server_name www.def.com; # 网址二location / {root html;index index.html index.htm;proxy_pass http://127.0.0.1:8082/; # 项目端口号}client_max_body_size 50m;error_page 500 502 503 504 /upgrade.html;location = /upgrade.html {root html;}}
2、nginx 配置 多个SSL域名指向不同端口
代码如下(示例):这种情况属于1的升级,对步骤1的两个项目域名进行证书加密。
监听的端口为443,如何443没开启,百度下如何开启ssl端口,增加如下配置
# 第一个项目server {listen 443 ssl;server_name www.abc.com; # 域名一ssl_certificate xxxxxxx.pem;ssl_certificate_key xxxxxxx.key; # 自己申请的ssl证书,以阿里为例直接可以申请免费的ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;client_max_body_size 50m;location / {root html;index index.html index.htm;proxy_pass http://127.0.0.1:8081/;}error_page 500 502 503 504 /upgrade.html;location = /upgrade.html {root html;}}# 第二个项目server {listen 443 ssl;server_name www.def.com; # 域名二ssl_certificate xxxxxxx.pem;ssl_certificate_key xxxxxxx.key; # 这是www.def.com域名的ssl证书ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;client_max_body_size 50m;location / {root html;index index.html index.htm;proxy_pass http://127.0.0.1:8082/;}error_page 500 502 503 504 /upgrade.html;location = /upgrade.html {root html;}}
到这里两个项目的证书已经配置完成了,使用 https://域名 已经可以访问,但如果直接使用域名访问,还是http格式的,下面配置一下http自动跳转https
3、nginx 配置 http域名主动跳转https域名
代码如下(示例):以第一个项目为例,其他项目按照这个方式改变就可以。
将第一个项目之前配置的http方式修改一下
# 原来第一个项目 http域名跳转server {listen 80;server_name www.abc.com; # 网址一location / {root html;index index.html index.htm;proxy_pass http://127.0.0.1:8081/; # 项目端口号}error_page 500 502 503 504 /upgrade.html;location = /upgrade.html {root html;}}
修改之后的,这样再访问www.abc.com会直接跳转到加密网址
server{listen 80; server_name www.abc.com; # 域名一rewrite ^(.*) https://$server_name$1 permanent; #重写地址}
http自动跳转https方式有多种
1、强制重写成安全地址(本文)
2、使用301重定向的方式将 http 的请求重定向到 https 上
server{listen 80; server_name www.abc.com; # 域名一return 301 https://$server_name$request_uri; # 重定向}
3、使用error_page,将http和https的监听配置写在同一个server块中,相当于将上面的两个server进行整合,包括其他配置也写在同一个server中
server {listen 80;listen 443 ssl;server_name www.abc.com;ssl on;ssl_certificate xxxxxxx.pem;ssl_certificate_key xxxxxxx.key; # 这是www.abc.com 域名的ssl证书# 其他配置项,这里省略error_page 497 https://$server_name$request_uri;
}
提示:配置完成后,先关闭nginx服务进程,再重新启动!!!!因为有时候 sudo nginx -s reload 重新加载会不起作用。
Nginx 配置多个SSL域名指向不同端口相关推荐
- nginx配置-根据UA进行域名跳转且仅限域名访问
随着移动用户的增长,web应用中,根据用户UA进行PC端.移动端的跳转是必要的,常见的方式有三种:前端js根据UA做重定向,后端根据UA返回不同的路径,在nginx中处理,这里用的是第三种.还配置了 ...
- nginx配置一、二级域名、多域名对应(api接口、前端网站、后台管理网站)
前提:安装好nginx,如果已经启动nginx,先停止,命令: ./usr/local/nginx/sbin/nginx -s stop 修改nginx配置 vi /usr/local/nginx/c ...
- Nginx配置WS、WSS域名
文章目录 一.Nginx配置WS 二.Nginx配置WSS 一.Nginx配置WS WS的全称是WebSocket,Nginx配置WebSocket也比较简单,只需要在nginx.conf文件中进行相 ...
- nginx配置重启后新域名及其访问不起作用
1.nginx配置2个server后 第一个域名1,访问第一个ip1:port1 第二个域名2,访问第二个ip1:port2 2.重启nginx后,使用第一个域名访问正常.使用第二个域名访问时,访问的 ...
- nginx快速配置自签SSL域名证书
缺德地图持续迷路中 简单说明 CSR文件生成网站 制作CA自签证书 测试nginx安装 访问测试 Linux主机访问测试 windows主机访问测试 简单说明 在制作证书之前,先简单说明一下关于制作域 ...
- nginx配置多个一级域名https访问的配置
首先已有两个域名 www.test1.com ,www.test2.com nginx的安装略过 1.在nginx安装目录下创建cert目录 在Nginx的安装目录下创建cert目录 2.在cert目 ...
- nginx配置华为云ssl证书
nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module解决办法如下: (1)在 /usr/local/src ...
- nginx配置https访问 生成ssl自签名证书,浏览器直接访问
问题 nginx配置自签名ssl证书,来支持https访问nginx,在浏览器中访问nginx时,提示有风险.而访问其他各大网站时,也是使用了https协议,为什么可以直接访问,而不提示有风险呢? 解 ...
- Nginx系列之使用ssl模块配置支持代理HTTPS链接
Nginx系列之使用ssl模块配置支持HTTPS访问 1.博客前言介绍 最近在用nginx代理https的第三方链接,因为不是做运维,所以对nginx并不是特殊熟悉,所以到处询问摸索了挺久 2.查看s ...
- IM开源项目OpenIM部署文档-从准备工作到nginx配置
IM开源项目OpenIM部署文档-从准备工作到nginx配置 2022-11-14 22:27·OpenIM 一.准备工作 运行环境 linux系统即可, Ubuntu 7.5.0-3ubuntu1~ ...
最新文章
- 360展示广告智能化演进
- js 连接mysql_关于Node.js 链接mysql超时处理(默认8小时)
- php元素浮动会产生哪些影响,元素浮动的影响与三列布局的实现原理——2019年9月4日22时30分...
- NeHe教程Qt实现——lesson09
- web service notes
- YUV422转RGB24
- java 屏蔽地域性访问_javaweb利用filter拦截未授权请求
- 收文处理和发文处理的环节_公文处理,如何提速增效
- 从下往上看--新皮层资料的读后感 第一部分:皮层细胞
- 目标追踪论文之狼吞虎咽(1):VITAL算法
- 如何用计算机计算一元三次方程,计算器如何解一元三次方程?
- 试算平衡表示例图_科目汇总表代试算平衡表
- 2020计算机校友会大学排名,2020年校友会大学排名:一个世界一流大学,一个中国一流大学...
- python 画三角形matli_Python实现PS滤镜特效之扇形变换效果示例
- instant-ngp总结
- 致远SPM国资企业解决方案之督查督办管理
- matlab第一次学习成果
- Python爬虫+数据分析+数据可视化(分析《雪中悍刀行》弹幕)
- JavaScript得到鼠标坐标代码如下
- POJ 3131 Cubic Eight-Puzzle
热门文章
- 测试 这篇是拿来测试51ditu的OpenAPI的
- python输入姓名输出欢迎你某某同学_2018-03-24 python 练习
- 让电脑说话vbs程序
- Linux 基本指令 Pt.2
- js删除数组,checkedBox选中状态,javascript数组删除重复项
- waiter.OnGreet(Tom) Delegate event
- 2010总结,2011展望
- 关于视频编码I P B帧存储,编码,解码,显示顺序的理解
- mysql根据idb还原数据_转一篇文章:MySQL 通过idb文件恢复Innodb 数据
- Springboot 中类不能使用@Value注解从yml中加载值