开发微信小程序需要部署项目到服务器。要求必须是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项目的更多相关文章

  1. centos7 nginx搭建及其反向代理

    摘要:nginx反向代理的原理:外部通过ip加端口访问nginx,nginx接收到外部请求,通过ip解析访问内部服务器,内部服务器再将数据传回Nginx服务器,而Nginx再把数据传回给外部客户机. ...

  2. 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则

    负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...

  3. nginx 为什么要反向代理 影藏后端 高效连接(给nginx,他自己返回) 端口冲突解决 多个服务

    nginx 为什么要反向代理  影藏后端   高效连接(给nginx,他自己返回)  端口冲突解决  多个服务 单机使用反向代理可以根据不同url匹配到不同站点   rsync 的工作原理和应用实例 ...

  4. Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中

    场景 Ubuntu Server 16.04 LTS上怎样安装下载安装Nginx并启动: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detai ...

  5. 端口被占用通过域名的处理 把www.domain.com均衡到本机不同的端口 反向代理 隐藏端口 Nginx做非80端口转发 搭建nginx反向代理用做内网域名转发 location 规则

    负载均衡-Nginx中文文档 http://www.nginx.cn/doc/example/loadbanlance.html 负载均衡 一个简单的负载均衡的示例,把www.domain.com均衡 ...

  6. Nginx设置Https反向代理,指向Docker Gitlab11.3.9 Https服务

    目录 目录 1.GitLab11.3.9的安装 2.域名在阿里云托管,申请免费的1年证书 3.Gitlab 的 https 配置 4.Nginx 配置 https,反向代理指向 Gitlab 配置 目 ...

  7. Nginx 部署、反向代理配置、负载均衡

    Nginx 部署.反向代理配置.负载均衡 最近我们的angular项目部署,我们采用的的是Nginx,下面对Nginx做一个简单的介绍. 为什么选择Nginx 轻:相比于Apache,同样的web服务 ...

  8. Nginx介绍与反向代理

    Nginx的产生 没有听过Nginx?那么一定听过它的"同行"Apache吧!Nginx同Apache一样都是一种WEB服务器.基于REST架构风格,以统一资源描述符(Unifor ...

  9. Nginx+Tomcat实现反向代理及动静分离

    Nginx+Tomcat实现反向代理及动静分离 时间 2014-07-07 15:18:35  51CTO推荐博文 原文  http://yijiu.blog.51cto.com/433846/143 ...

随机推荐

  1. golang基础--map字典

    map 类似python语言中的dict(字典类型),以key-value形式存储数据 Key必须是支持==或!=比较运算的类型,不可以是函数,map或slice map查找比线性搜素快很多,但比使用 ...

  2. 远程桌面控制项目开发(Spring+Netty+Swing)

    [目录] 1.前言 2.初现端倪 3.款款深入 4.责任细分 5.功能层级图 6.项目结构 7.关键类设计 8.一些设计想法 9.待优化 10.一点心得 11.效果演示 12.讨论 13.GitHub ...

  3. 马尔科夫随机场(Markov Random Field)

    马尔可夫随机场(Markov Random Field),它包含两层意思:一是什么是马尔可夫,二是什么是随机场. 马尔可夫过程可以理解为其当前的状态只与上一刻有关而与以前的是没有关系的.X(t+1)= ...

  4. 15.Generator 函数的语法

    Generator 函数的语法 Generator 函数的语法 简介 基本概念 Generator 函数是 ES6 提供的一种异步编程解决方案,语法行为与传统函数完全不同.本章详细介绍 Generat ...

  5. 10.Set 和 Map 数据结构

    Set 和 Map 数据结构 Set 和 Map 数据结构 Set 基本用法 ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来 ...

  6. [转]SQL Server如何启用xp_cmdshell组件

    本文转自:https://www.cnblogs.com/atree/p/SQL_SERVER_xp_cmdshell.html 错误描述]: SQL Server阻止了对组件‘xp_cmdshell ...

  7. python队列、线程、进程、协程

    目录: 一.queue 二.线程 基本使用 线程锁 自定义线程池 生产者消费者模型(队列) 三.进程 基本使用 进程锁 进程数据共享 默认数据不共享 queues array Manager.dict ...

  8. 以中间件,路由,跨进程事件的姿势使用WebSocket

    通过参考koa中间件,socket.io远程事件调用,以一种新的姿势来使用WebSocket. 浏览器端 浏览器端使用WebSocket很简单 // Create WebSocket connecti ...

  9. github上老外做的jQuery虚拟键盘

    jQuery官方比较迟滞的更新版本: http://plugins.jquery.com/keyboard/ 最新版本更新官方地址: https://github.com/Mottie/Keyboar ...

  10. Winform 常用的方法

    一,Winform 如何内嵌窗体 1,判断窗体中是否以还有内嵌窗体 private void ClosePreForm() { foreach (Control item in this.spCont ...