fatedier / frp

A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
Apache License 2.0
85.1k stars 13.21k forks source link

web代理可以使用subdomain,能否增加一个功能使用header区分呢 #2210

Closed jiangtaomt closed 3 years ago

jiangtaomt commented 3 years ago

在某些情况下没有域名,也不能暴露更多公网端口的情况下,可否通过header,映射到不同的内网web服务。

例如

[web]
type = http
local_port = 80
custom_header = header_key:header_value

frps当收到 web请求中,含有header_key=header_value 时,转到对应的代理

heybody commented 3 years ago

这个需求应该可以内网部署个nginx ,在nginx配置header转发;

fatedier commented 3 years ago

可以考虑,但是目前基于 ini 的配置文件的表达能力比较弱,一些复杂的功能描述没那么简洁,需要仔细考虑一下具体的用法。

jiangtaomt commented 3 years ago

我这是为了管理散落在各地的docker主机,场景倒是比较简单,使用unix socket插件 转发/var/run/docker.socket 。之前倒是考虑过stcp,需要在服务器端部署frpc 和frps。

fatedier commented 3 years ago

@jiangtao1921 其实通过域名做路由也可以的,相当于是基于 host header 做路由。

curl http://{frps IP}/xxx -H 'Host: host1'

类似这样,custom_domains 里填写 host1, host2

frankli0324 commented 3 years ago

类似这样,custom_domains 里填写 host1, host2

在国内域名备案的环境下不可行

jiangtaomt commented 3 years ago

已解决