git下载地址
中文文档参考
这里需要nginx 配置https证书, frp服务端,frp客户端,
阿里centos7, 子级域名。
client -->(https) nginx -->
frp server(7000) in linux:8888 -->
frp client(7000) in windows --> current client:8080
client --> get url ...
frp
- 1. 域名,nginx问题
- 2. 安装frp服务器到centos7
- 3. 安装frp 客户端
- 4. 将frp设置成后台服务
1. 域名,nginx问题
微信小程序需要https接口加密的协议。使用nginx配置https。
由于微信只支持子级域名。申请证书时需要填的是子级域名。
-
申请ssl证书
阿里云ssl详细配置 -
阿里云控制台配置子级域名解析。
-
nginx 配置
server {listen 443 ssl;server_name frp.demo.com; # 被解析的子级域名root html;index index.html index.htm;ssl_certificate cert/frp.demo.com.pem; # nginx证书绝对路径,需要你在控制台下载,上传到自定目录ssl_certificate_key cert/frp.demo.com.key; # nginx证书路径ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;location / {proxy_pass http://127.0.0.1:8888; # frp的端口,根据centos7上frps.ini 里面来的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 Upgrade-Insecure-Requests 1;proxy_set_header X-Forwarded-Proto https;}}
2. 安装frp服务器到centos7
- 下载两个
- 将linux版本的上传到centos,选择目录解压
- 配置frps, 就是frp server,只用改这个
配置
# frp端口
bind_port = 7000# http nginx转发到这里~
vhost_http_port = 8888
# https
vhost_https_port = 4438# 连接认证token, 客户端连接需要和这个对应
privilege_token = bitqian666# 子域名
subdomain_host = frp.demo.com# 自定义404 页面
custom_404_page = /你的centos frp路径/frp/404.html# dashboard图形管理页面
dashboard_port = 81dashboard_user = admim
dashboard_pwd = admin
3. 安装frp 客户端
见第二步图,解压即用,用来连接centos上的frp
配置
[common]
server_addr = 88.88.88.88 # 这里乱写的,换成你域名的ip
# 与linux上的frp相连接
server_port = 7000# 内网穿透名称
[web]
# 协议为http(即80端口)
type = http
# 内部映射的IP
local_ip =127.0.0.1
# 内部映射为8080端口
local_port = 8080
token = bitqian666 # 和sever对应
# 远程端口不用设置,只能沿用frps下vhost_http_port
# 映射域名为 http://wd.frp.kioye.cn
#subdomain = wd
# 或者直接指定全域名(你只需要将域名解析到服务器上)
# custom_domains = blog.kioye.cn
custom_domains = frp.demo.com[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
4. 将frp设置成后台服务
- vim /lib/systemd/system/frps.service
- 写入
[Unit]
Description=fraps service
After=network.target syslog.target
Wants=network.target[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/your/path/frps -c /your/path/frps.ini[Install]
WantedBy=multi-user.target
启动systemctl start frps
开机自启动systemctl enable frps
frp后台服务