众所周知,我们微信开发过程会遇到以下两个场景:
我们可以使用一系列内网穿透映射的工具,可以在公网访问本地开放的程序,(无论是自己搭建还是使用其他产品 都适用)
如果是自己搭建或者使用付费的内网穿透工具,那么隧道域名将可以固定,我们在以下两个地方配置为获取到的内网域名,微信将会把所有请求 转发到 我们本地的这个穿透域名上,就可以实时调试了
这里在使用一些免费内网穿透产品遇到的问题,并不是所有免费内网穿透都有此问题,记录此篇文章是增加一种程序思维。解决问题的思路。
我使用的工具,分配的免费域名,会不定期变动,如第一次分配为siamA.xxxx.com
可能一个小时后会变成siamB.xxxx.com
这个时候就不适用我们上面说的这种,直接配置穿透域名在微信后台 因为需要反复修改,比较麻烦
我这里的做法是:提前把业务以后上线的域名准备好,部署在服务器,通过转发
再转发到穿透域名。
如果内网穿透域名变化,只需要在服务器修改一次内网域名(此步骤可以通过脚本,实现自动切换 非本篇文章思路重点内容) 不需要反复去登录微信后台修改授权域名。(特别是登录微信公众号需要公司领导扫码的情况)
以下为nginx转发配置文件
location / { expires 12h; if ($request_uri ~* "(php|jsp|cgi|asp|aspx)") { expires 0; } proxy_pass http://siamC.xxxx.com; proxy_set_header Host siamC.xxxx.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; #持久化连接相关配置 #proxy_connect_timeout 30s; #proxy_read_timeout 86400s; #proxy_send_timeout 30s; #proxy_http_version 1.1; #proxy_set_header Upgrade $http_upgrade; #proxy_set_header Connection "upgrade"; add_header X-Cache $upstream_cache_status; #Set Nginx Cache add_header Cache-Control no-cache; }
本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。
我来说两句