mac m1 pro 解决微信公众号本地调试问题

dandan3年前程序开发3721

1、 先通过brew安装nginx

brew install nginx
#如果报错:==> Pouring ca-certificates-2022-10-11.all.bottle.tar.gz
# Error: No such file or directory @ rb_sysopen - /Users/yelin/Library/Caches/Homebrew/downloads/4f73a69fb5caa49a7bd732c718dfaba61866e47ec16da4468e657a57453ce33d--ca-certificates-2022-10-11.all.bottle.tar.gz,可以试试 
#清除缓存 更新后再装
brew clean
brew update


2、配置nginx转发80端口,把路径/wxpub转发到本地uniapp的路径(网站目录/wxpub),将/wechat/pub的转发到go的后端8085接口地址上

vim /opt/homebrew/etc/nginx/nginx.conf
#添加域名转发
server_name localhost wxpub.mzwjc.com;
 # 1. 微信公众号消息/事件推送回调
    location ^~ /wechat/pub/ {
        proxy_pass http://127.0.0.1:8085/wechat/pub/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
        # 微信公众号网页开发
        location ^~ /wxpub {
            proxy_pass http://localhost:8080/wxpub;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        }
# 重载
nginx -s reload
# 重启(应该重载就行了)
brew services reload nginx
#如果有报错,创建目录和编辑配置重试:
pid  /opt/homebrew/var/run/nginx.pid;

3、修改hosts(公众号网页回调跳转)

sudo vim /etc/hosts
#添加代理内容
127.0.0.1 wxpub.mzwjc.com


4、微信公众号后台,公众号设置,功能设置,网页授权域名,添加好该域名。(需要上传文件到根目录)

5、将frps放到linux服务器,比如opt下,chmod +x 给frps和sh都增加执行权限,然后启sh


6、uniapp,需要在manifest.json的h5配置的devServer下,增加一个"disableHostCheck" : true (vue可能都要),并且运行端口要和绑定的端口一致

"devServer" : {
    "disableHostCheck" : true,
    "port" : 8080
}

7、本期要启动frpc,配置参考其他帖子,能启动成功,域名解析里,解析道机子上,然后防火墙放行

[common]
# 连接服务端的地址
server_addr = 服务器真实ip
# 连接服务端的端口
server_port = 7000

# 鉴权方式:token, oidc,需要和服务端一致
authentication_method = token
# 鉴权使用的 token 值,需要和服务端一致
token = 服务器约定的密码

[wxpub]
type = http
local_ip = 127.0.0.1
local_port = 80
# remote_port = 6000
# 域名
custom_domains = wxpub.mzwjc.com

服务器上宝塔nginx,要把wechat开头的转到frp上的180端口上

 # 转发公众号推送到frp给本地
    location /wechat/ {
        proxy_pass http://127.0.0.1:180;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

如果推送域名要走https,针对公众号事件推送:

# 找到包含 listen 443 ssl; 的 server 块
server
{
    listen 443 ssl;
    server_name wxpub.mzwjc.com;

    # 确保在 443 这个 server 块里面,也加了这一段:
    location /wechat/ {
        proxy_pass http://127.0.0.1:180;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}




相关文章

Docker安装篇(CentOS7.6)

7.6环境自带gcc和gcc-c++,不用再装安装yum-utilsyum install -y yum-utils设置阿里云镜像仓库yum-config-manager...

rem解决笔记本访问网站内容被放大的问题

一般win系统的笔记本,出厂默认就是系统缩放150%,导致虽然分辨率是1920*1080,可浏览器的视口宽度却只有1200多,整个页面内容也被放大了,导致页面混乱。mac m1笔记本也同样,分辨率不同...

通过frp+服务器+域名将本地网站映射到外网

通过frp+服务器+域名将本地网站映射到外网

因为要将台式机穿透出去,作为gpu算力使用,借助frp来实现一些接口或dify之类框架的映射,在外网访问台式机电脑。使用熟悉的老版本frp:https://github.com/fatedier/fr...

camunda使用

1、 拉取镜像docker pull camunda/camunda-bpm-platform:7.17.02、配置并启动docker run -d ...

mysql5.6导入mysql8的坑

1、虽然在mysql8里设置数据库的排序规则是utf8mb4_general_ci ,但是导入后,却都被变成了utf8mb4_0900_ai_ci解决:用navicae导出的,表语句中没有COLLAT...

go相关踩坑

安装swag根据官方教程,执行下方后,GOPATH/bin中没有swag程序,应该要先配置GOBIN环境变量,有了后再执行。 其他根据官网来再下两个gin-swag和filesgo inst...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。