记录一次frp+nginx实现微信公众号API内网穿透开发

首先你需要有一台公网服务器和域名

新建frps_http.ini配置

[common]
bind_addr = 0.0.0.0
bind_port = 7000   
vhost_http_port = 8081  #监听本地8081端口

启动frps  

./frps -c ./frps_http.ini

本机启动spring boot项目以若依为例后端端口为8080

添加本机frpc配置

[common]
server_addr = youIp
server_port = 7000
[web]
type = http
local_port = 8080 #转发到本地8080端口
custom_domains = www.xxx.com #你的公网域名

首先本地后端使用8080端口映射到公网服务器的8081端口  因为微信公众号的回调与网页授权都需要使用80与443端口所以下面需要使用nginx 反向代理  把访问公网IP80端口的请求转发到公网本机的8081端口 frps监听本机8081端口 转发到frpc  在使用frpc在把公网服务器8081的端口在转发到本地8080后端端口实现端口映射

添加nginx 配置

server {
    listen       80;
    server_name  你的域名;

    location /view/ {
        alias      /var/www/dist/;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html;
    }

     location /wx/ {
        proxy_pass              http://你的域名:8081;
        proxy_set_header        Host $proxy_host;
        proxy_set_header        X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        #上传文件大小配置
        client_max_body_size    100M;
    }
}

注意location 的路径这里使用的是alias而不是root root 指令在这里与 alias 指令略有不同。对于 root 指令,Nginx 会将 URI 直接附加到 root 指定的路径后面来查找文件。因此,在 location /vs/ 块中,URI /vs/abc.html 会被映射到 /var/www/dist/vs/abc.html 而不是 /var/www/dist/abc.html

由此实现当访问http://xxx.xx.xx/view/xxx.html的时候访问前端页面   访问http://xxx.xx.xx/wx的时候实现请求转发到本机8081  再用frps转发到frpc本机的8080端口实现微信服务器端与你的回调通信

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值