通过frp+服务器+域名将本地网站映射到外网
因为要将台式机穿透出去,作为gpu算力使用,借助frp来实现一些接口或dify之类框架的映射,在外网访问台式机电脑。
使用熟悉的老版本frp:https://github.com/fatedier/frp/releases/tag/v0.51.3
需要进行反向代理,否则只能做微信开发的接口转发,网站的静态资源无法正常访问,这里直接借助宝塔配置反向代理,也让frp能守护进程方式运行。
先配置好服务器的frp,配置文件如下,上传到服务器上:
[common] # 为 HTTP 类型代理监听的端口,启用后才支持 HTTP 类型的代理,未配置则默认不启用,这里用180作为外部端口,服务器和宝塔安全组都需要放行 vhost_http_port = 180 # 服务端监听端口,接收 frpc 的连接,默认值:7000,与本机客户端匹配使用 bind_port = 7000 # 鉴权方式: token, oidc,就token就行 authentication_method = token # 鉴权使用的 token 值,自己设置一个值,客户端要匹配上 token = token_123456 # 下面这些是配置frp控制台的,目前没咋用到 # 启用 Dashboard 监听的本地地址 dashboard_addr = 0.0.0.0 # 启用 Dashboard 监听的本地端口 dashboard_port = 7500 # Dashboard 登录账号 dashboard_user = admin # Dashboard 登录密码 dashboard_pwd = 123456
上传上去后,通过服务器的宝塔面板,应用商店中搜索并安装一个supervisor,然后用他创建一个守护进程,填写如下:(按自己的目录来)(要chmod +x 给执行权限)
保存后,确认运行状态正常,然后去站点里,创建网站,使用映射的域名,并且在域名解析那边解析到服务器ip上,然后在网站配置的反向代理中,增加以下配置:(发送域名就是写$host)
剩下就是客户端了,客户端配置:
[common] server_addr = 服务器ip server_port = 7000 # 鉴权方式:token, oidc,需要和服务端一致 authentication_method = token # 鉴权使用的 token 值,需要和服务端一致 token = token_123456 [dify] type = http local_ip = 127.0.0.1 local_port = 本地服务的端口 custom_domains = 域名
然后运行就可以了,win电脑要用cmd之类的工具进入到目录下运行