Centos7 Nginx 443端口反向代理springboot项目
开发微信小程序需要部署项目到服务器。要求必须是443端口。但是一个443端口只能监听一个服务器。所以就出现了一个问题就是每次开发一个小程序就需要买一个服务器。觉得特别多余。后来查到了有一种方式就是通过nginx配置反向代理,服务器ip绑定不同域名,然后nginx根据不同的域名去配置转发到其他端口。这样就可以实现一个服务器共存多个小程序后端项目了。
具体操作如下↓
Nginx环境安装
我的服务器镜像为Centos7.。
Nginx的安装参考 https://ken.io/note/centos-quickstart-nginx-setup
- 添加RPM包进行安装
#添加Nginx包
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
#安装
sudo yum -y install nginx
- 启动Nginx并设置为开机启动
#启动服务
sudo systemctl start nginx
#(如果启动失败,可能是Apache等服务占用了80端口,关掉相应服务/修改端口即可)
#设置nginx开机启动
sudo systemctl enable nginx
- 开放端口
#开放80端口(nginx默认监听80端口)
firewall-cmd --add-port=80/tcp --permanent
#重载防火墙规则
firewall-cmd --reload
关于端口开放,也可以直接去控制台添加规则。
以上操作完成之后就安装好了nginx
Nginx配置修改
接下来需要对nginx的配置文件进行修改。我们为了方便管理,直接创建一个通用配置文件。
#1、新增配置文件夹
sudo mkdir /etc/nginx/server
#2、修改默认配置(加载该文件夹下的配置)
sudo vi /etc/nginx/nginx.conf
#3、在http属性下增加:
include /etc/nginx/server/*.conf;
配置文件内容:
server {
listen 443 ssl;
server_name wx.gzdecision.cn;
ssl on;
ssl_certificate /etc/ssl/private/1_wx.gzdec*****.crt;
ssl_certificate_key /etc/ssl/private/2_wx.gzdec*****.key;
location / { #转发或处理
proxy_pass http://wx.gzdecision.cn:82;
}
}
server {
listen 443 ssl;
server_name www.eangaie.cn;
ssl on;
ssl_certificate /etc/ssl/private/******_www.eangaie.cn.crt;
ssl_certificate_key /etc/ssl/private/******_www.eangaie.cn.key;
location / { #转发或处理
proxy_pass http://www.eangaie.cn:81;
}
}
这里我让他监听两个443端口,然后分别转发到81、82端口。并在81、82端口运行两个javaweb项目。
项目运行
用ps -ef|grep java命令可以查到我运行的两个javaweb项目。里面其中一个是在81端口、一个是在82端口

Ssl证书获取
Ssl证书我是在控制台下载的用于nginx的证书。然后创建一个用户储存证书的文件夹。并在nginx的配置文件把路径填上去。
运行结果


两个https的地址访问到不同的项目主页~
Centos7 Nginx 443端口反向代理springboot项目的更多相关文章
- centos7 nginx搭建及其反向代理
摘要:nginx反向代理的原理:外部通过ip加端口访问nginx,nginx接收到外部请求,通过ip解析访问内部服务器,内部服务器再将数据传回Nginx服务器,而Nginx再把数据传回给外部客户机. ...
- 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则
负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...
- nginx 为什么要反向代理 影藏后端 高效连接(给nginx,他自己返回) 端口冲突解决 多个服务
nginx 为什么要反向代理 影藏后端 高效连接(给nginx,他自己返回) 端口冲突解决 多个服务 单机使用反向代理可以根据不同url匹配到不同站点 rsync 的工作原理和应用实例 ...
- Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中
场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...
- 端口被占用通过域名的处理 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则
负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...
- Nginx设置Https反向代理,指向Docker Gitlab11.3.9 Https服务
目录 目录 1.GitLab11.3.9的安装 2.域名在阿里云托管,申请免费的1年证书 3.Gitlab 的 https 配置 4.Nginx 配置 https,反向代理指向 Gitlab 配置 目 ...
- Nginx 部署、反向代理配置、负载均衡
Nginx 部署.反向代理配置.负载均衡 最近我们的angular项目部署,我们采用的的是Nginx,下面对Nginx做一个简单的介绍. 为什么选择Nginx 轻:相比于Apache,同样的web服务 ...
- Nginx介绍与反向代理
Nginx的产生 没有听过Nginx?那么一定听过它的"同行"Apache吧!Nginx同Apache一样都是一种WEB服务器.基于REST架构风格,以统一资源描述符(Unifor ...
- Nginx+Tomcat实现反向代理及动静分离
Nginx+Tomcat实现反向代理及动静分离 时间 2014-07-07 15:18:35 51CTO推荐博文 原文 http://yijiu.blog.51cto.com/433846/143 ...
随机推荐
- .Net Core使用NLog记录日志
参见:https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2 大致步骤: Nuget中引用NLog及NLog ...
- EF的小知识
关于EF多表提交保存的问题,同理,修改也适用,用EF不久,总是每张表提交都SaveChanges()一下,后面查看了点资料,其实直接可以add到每张表,直接最后提交就行了,这样操作起来和性能上都要好很 ...
- python3.3 unicode(encode&decode)
最近在用python写多语言的一个插件时,涉及到python3.x中的unicode和编码操作,本文就是针对编码问题研究的汇总,目前已开源至github.以下内容来自项目中的README. 1 ASC ...
- 使用C#利用cmd来调用java jar包获取其中的数据
其实也很简单,就是在C#中构建一个Process,启动jar包,并且给jar包传递参数 因为我并没有怎么学过JAVA,所以只写了个很小的Demo,就是根据传入的参数获取对应的数据 以下是JAVA De ...
- [Redis] redis数据备份恢复与持久化
数据库备份,使用save命令,将会在redis的安装目录中生成dump.rdb 例如:在我的目录下 redis/src/dump.rdb 使用命令config get dir,获取当前redis的安装 ...
- ZUI分页器的使用案例(ECLIPSE SMS项目)
不足:并未编写导出功能 HTML代码: <form action="${basePath}/SMSLogList.cwai" method="post" ...
- SpringBoot配置文件注入值数据校验
package com.hoje.springboot.bean; import org.springframework.beans.factory.annotation.Value; import ...
- 无法正常下载Nuget 包的问题
引用Nuget 是遇到的问题,再次记录一下. 问题描述:Install-Package : 无法安装程序包“Quartz 3.0.2”.您正在尝试将此程序包安装到某个将“.NETFramework,V ...
- SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器
一.参数的传递 1.简单的参数传递 /* @RequestParam用法:入参名字与方法名参数名不一致时使用{ * value:传入的参数名,required:是否必填,defaultValue:默认 ...
- ASP.NET Core 2 学习笔记(十一)Cookies & Session
基本上HTTP是没有记录状态的协定,但可以通过Cookies将Request来源区分出来,并将部分数据暂存于Cookies及Session,是写网站常用的用户数据暂存方式.本篇将介绍如何在ASP.NE ...