豌豆Ai站群搜索引擎系统 V.25.10.25 网址:www.wd.chat

🗣 Wd提问: frp 虚拟主机

🤖 Ai回答:
以下是关于 FRP 虚拟主机 的详细解释和配置指南。

FRP (Fast Reverse Proxy) 是一款高性能的反向代理应用,主要用于将内网服务(如网站、SSH、远程桌面等)安全、便捷地暴露到公网上。FRP 虚拟主机 模式是其中一项非常常用的功能,它允许您在同一个公网服务器(FRPS)的同一个端口上,通过不同的域名来访问内网中多个不同的 Web 服务。

这非常类似于传统的 Web 服务器(如 Nginx, Apache)的虚拟主机 (Virtual Host) 功能。

一、核心概念与工作原理

假设你有两个内网网站:
* `site1.local` (运行在 `192.168.1.100:80`)
* `site2.local` (运行在 `192.168.1.101:8080`)

你只有一个公网服务器,IP 是 `1.2.3.4`。你想让用户通过:
* `www.domain1.com` 访问 `site1.local`
* `www.domain2.com` 访问 `site2.local`

传统方法:你需要为每个内网服务在 FRPS 上配置不同的远程端口,例如 `1.2.3.4:8081` 指向 site1,`1.2.3.4:8082` 指向 site2。这样既不优雅(端口难记),也可能遇到端口冲突或防火墙限制。

FRP 虚拟主机方法:
1、 将两个域名 `www.domain1.com` 和 `www.domain2.com` 的 DNS A 记录都解析到你的公网服务器 IP `1.2.3.4`。
2、 在 FRPS 端,只开启一个端口(例如 `80`)用于接收所有 Web 请求。
3、 在 FRPC(客户端)配置中,为每个内网服务指定一个 `custom_domains` 参数。
4、 当用户访问 `www.domain1.com:80` 时,FRPS 会根据 HTTP 请求头中的 `Host` 字段识别出这是 `www.domain1.com` 的请求,然后根据配置将其转发给对应的 FRPC 客户端,该客户端最终将请求送达内网的 `192.168.1.100:80`。

整个过程对用户是透明的,他们感觉就像直接访问了两个独立的公网网站。

二、配置步骤

1、准备公网服务器 (FRPS)

编辑 FRPS 的配置文件 `frps.ini`:

ini
[common]
bind_addr = 0.0.0.0
bind_port = 7000 FRP 的控制端口,用于和客户端通信

虚拟主机关键配置:用于 HTTP 服务的端口
vhost_http_port = 80
如果你需要 HTTPS 虚拟主机,还可以开启以下端口
vhost_https_port = 443

可选:仪表板端口
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = your_password

认证令牌(建议设置,增强安全性)
token = your_secure_token_here

启动 FRPS 服务:
bash
frps -c ./frps.ini

2、准备内网机器 (FRPC)

为第一个网站(`site1.local`)配置 FRPC 客户端 `frpc-site1.ini`:

ini
[common]
server_addr = 1.2.3.4 你的公网服务器 IP
server_port = 7000 FRPS 的 bind_port
token = your_secure_token_here 必须和 FRPS 设置的 token 一致

定义第一个 Web 服务代理
[web-site1]
type = http 代理类型为 HTTP
local_ip = 192.168.1.100 内网网站的实际 IP
local_port = 80 内网网站的实际端口
custom_domains = www.domain1.com,domain1.com 绑定的域名,多个用英文逗号分隔

可选:如果你希望 URL 中带前缀(例如 http://domain.com/site1),可以配置 subdomain
但 subdomain 和 custom_domains 通常二选一
subdomain = site1

为第二个网站(`site2.local`)配置另一个 FRPC 客户端 `frpc-site2.ini`:

ini
[common]
server_addr = 1.2.3.4
server_port = 7000
token = your_secure_token_here

[web-site2]
type = http
local_ip = 192.168.1.101
local_port = 8080
custom_domains = www.domain2.com,domain2.com

启动两个 FRPC 客户端:
bash
frpc -c ./frpc-site1.ini
frpc -c ./frpc-site2.ini

3、DNS 设置

将你在 FRPC 配置中使用的所有域名(`www.domain1.com`, `domain1.com`, `www.domain2.com`, `domain2.com`)的 A 记录全部指向你的公网服务器 IP `1.2.3.4`。

等待 DNS 记录生效后,你就可以通过浏览器访问 `http://www.domain1.com` 和 `http://www.domain2.com` 来分别访问两个内网站点了。

三、高级用法与注意事项

1、 HTTPS 虚拟主机:
* 配置 FRPS 的 `vhost_https_port = 443`。
* 在 FRPC 配置中,将 `type` 改为 `https`: `type = https`。
* 注意:这种方式 FRPS 无法提供有效的 SSL 证书,会产生安全警告。更推荐的做法是:
* 在 FRPS 前端使用 Nginx 或 Caddy 等反向代理软件来终止 HTTPS(处理 SSL 证书),然后再将 HTTP 请求转发给 FRPS 的 `vhost_http_port`。

2、 身份验证:
* 务必设置 `token` 参数,防止未经授权的客户端连接。

3、 URL 路由 (subpath):
* 标准 HTTP 类型的代理不支持路径路由(如 `domain.com/path`)。如果你需要此功能,可以考虑:
* 在内网 Web 服务本身配置应用路由。
* 使用 `type = tcp` 代理到内网的 Nginx,由内网 Nginx 根据路径进行反向代理和负载均衡。

4、 权限与安全:
* 确保 FRPS 上的端口(如 `80`, `443`)已在防火墙中放行。
* 虚拟主机依赖 HTTP 请求头中的 `Host` 字段,确保你的内网 Web 服务配置了正确的域名(如果它需要识别域名的话)。

总结

| 组件 | 角色 | 关键配置 |
| : | : | : |
| FRPS (Server) | 公网入口 | `vhost_http_port`, `vhost_https_port` |
| FRPC (Client) | 内网代理 | `type = http/https`, `local_ip`, `local_port`, `custom_domains` |
| DNS | 域名解析 | 将所有域名 A 记录指向 FRPS 公网 IP |

FRP 的虚拟主机功能是一个非常强大且实用的特性,可以极大地节省公网 IP 和端口资源,让内网Web服务的发布变得更加简洁和管理。

Ai作答

📣 商家广告


八字

广告招商

高防vps

广告招商

公司


0

IP地址: 234.191.252.179

搜索次数: 0

提问时间: 2025-11-03 17:28:57

🛒 域名购买
kt6.cn
w-t.cn
2.bj.cn
zf.gs
08.gold
al3.net
f.cq.cn
v.jl.cn
40.gold
gang.hk

❓️ 热门提问
vps是与云服务器
域名价值评估贷款
程序PHP Symfony入门
东阳教育云空间
天行吧
的网站设计公司
链路追踪PHP扩展
云主机一个月多少钱
机房防雷工程
网址怎样保存到桌面
豌豆Ai站群搜索引擎系统

🌐 域名评估
jz2.cn
kou.red
saweb.cn
vtolfair.net.cn
pufa.cn
evtol.jl.cn
yj.yn.cn
prhh.cn
zwej.cn
vtoltower.org.cn

⛏ 最新挖掘
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜

🖌 热门作画

🤝 关于我们:
豌豆Ai 域名 建站 站群 留痕 推广 评估 源码
开发Ai 工具 日记 价格 加盟 广告 流量 留言 联系

🗨 加入群聊
群

🔗 友情链接
租赁云主机  贵州用友地址  ai提问

🧰 站长工具
Ai工具  whois查询  搜索

📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。

👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。

上一篇 55305 55306 55307 下一篇