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}")

 

Logo

前往低代码交流专区

更多推荐