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

dandan2年前程序开发4384

因为要将台式机穿透出去,作为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 给执行权限)

1730734533175.jpg

保存后,确认运行状态正常,然后去站点里,创建网站,使用映射的域名,并且在域名解析那边解析到服务器ip上,然后在网站配置的反向代理中,增加以下配置:(发送域名就是写$host)

1730734921808.jpg

剩下就是客户端了,客户端配置:

[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之类的工具进入到目录下运行


相关文章

宝塔ftp连不上

1、先检查端口是否有开放,涉及宝塔端口 和 云服务器的安全组;2、对Pure-ftpd的配置文件中,大概180来行的ForcePassiveIP  开放,并且把ip改成服务器的外网ip;...

mac m1使用docker mysql踩坑

1、etcd版本用3.4.242、mysql镜像要用:mysql/mysql-server:8.0.323、mysql因为是8的版本,启动后本地没权限连接,需要进容器创建用户和添加权限:# ...

mac m1 pro 解决微信公众号本地调试问题(未成功)

最终未成功,买natapp先凑合用了,临时记录下nginx安装1、微信公众号后台,公众号设置,功能设置,网页授权域名,添加好该域名。(需要上传文件到根目录)2、natapp上购买vip隧道,9元/月;...

linux安装go环境

1、在 https://go.dev/dl/  下载linux的包2、上传到服务器,解压,比如放到/opt后,执行下命令,解压到当前目录得到go文件夹tar -xzf&n...

go-zero中使用jaeger链路追踪

go-zero中使用jaeger链路追踪

链路追踪分两块:(1)框架内置的,通过配置实现,一般都在api、rpc等中间件中,粗浅理解是请求级;(2)自定义的,可以定义到函数里,粗浅理解可以自己写代码级的,也就是可以跟踪每个函数方法的执行时间;...

go-zero学习

goland创建新项目,需要在设置->go->go模块里启用go模块集成,不然下载的包无法正常引入根据api文件内容生成文件 goctl api go&nbs...

发表评论    

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