0. 适用范围
适合需要在本地测试前后端分离项目,并需要在企业自建应用上访问自己网页的情况
1. 所需软件:
Sunny-Ngrok:局域网软件 http://www.ngrok.cc/
Nginx-1.17.10:反向代理服务 http://nginx.org/en/download.html
2. 本地环境:
Windows10 、 Java 1.8
3. 相关安装与配置:
Java、Nginx的安装忽略不表。 主要说明Ngrok与Nginx的配置
3.1 Sunny-Ngrok安装与配置
在对应网站注册后,配置如下。其中名称和前置域名随意填写,协议可选http、https。
其中https需要你自行使用SSL构建一个本地证书,并设置本地端口为 127.0.0.1:443。
正式服务器建议申请证书。
接下来,下载客户端 http://www.ngrok.cc/download.html , 根据自身的系统环境下载
启动运行脚本
它会要求你输入客户端id,可在刚刚创建代理的网页里查询。
复制粘贴回车。
脚本中显示Online表示启动成功
3.2 Nginx安装与配置
Nginx在Windows下不需要安装,配置后直接启动就可以。
以下是对应的配置文件。
#user nobody;
#nginx进程数
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 8000;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
# 设置前端位置
location / {
root D:\\workplace\\wx-cp-html\\HTML;;
index index.html index.htm;
}
# 设置后端接口URL
location ~^/wx/cp {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8081;
}
#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 html;
}
}
}
启动Nginx
在Windows下,直接运行nginx.exe即可。
在Nginx/logs/ 目录下有启动日志,若果启动失败,可以查看error.log中的错误信息,一般来说,启动失败都是端口占用导致的。
启动成功后,logs下会生成nginx.pid文件,里面保存的是Nginx主进程ID号
4.测试
通过域名访问
注意跟上 index.html , 因为代理采用的IIS ,在nginx配置自动访问主页暂不成功。
测试接收企业微信消息
后台启动端口
在应用发送消息 1
后台接收
后端RequestMapping 请和自己配置的Nginx保持一致,以下是我的配置
@RestController
@RequestMapping("/wx/cp/portal/{agentId}")