之前已经实现了ngrok实现内网穿透,那么这里主要的问题来源于以下:
由于微信在接入开发者时必须使用80或者443端口,但是本身就一个外网资源,且80端口已被正常的业务使用,且服务器也不太便用于调试和测试,因此想着利用先前搭建的ngrok来实现内网的穿透。
配置ngrok
在内网机器配置ngrok
server_addr: xxx.com:4443
trust_host_root_certs: false
tunnels:
http:
subdomain: 'wx.pub'
proto:
http: '80'
/opt/ngrok/bin/ngrok --config ngrok.cfg start http
ngrok映射的http端口为9081
配置ngrok的nginx
配置80端口的nginx
nginx的通过配置不同的 server_name 来通过不同的域名的80端口指向不同的配置,利用 proxy_pass 来指重定向不同的服务
server {
listen 80;
listen [::]:80;
server_name wx.xxx.com;
location / {
proxy_pass http://wx.pub.xxx.com:9081/;
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
}
}