补充记录:
商业型服务器部署中,如果通过 公网 Nginx → FRPS → 本地服务,会带来额外复杂性和性能开销,原因是:
Nginx 并非纯转发,而是:
接收请求(完成 TLS、解析 header)
再处理(反向代理规则、可能涉及 rewrite、缓冲)
再转发给 FRPS
这比直接让 FRPS 接管 80/443 多了一层应用处理,增加延迟和维护成本。
当然我已经做了许多新参数的配置,让nginx实现电线的功能,仅仅只做通讯的转发与连接,但配置相对复杂。所以想要简单快,就直接用frps接管80 443端口,并且在frpc中开启转发真实ip,
transport.proxyProtocolVersion = "v2"
最后在本地服务器上的nginx中开启接收frp转发的真实ip即可。
listen 80 proxy_protocol;
listen 443 ssl http2 proxy_protocol;
# 开启 Proxy Protocol 支持
set_real_ip_from 0.0.0.0/0;
real_ip_header proxy_protocol;
# 开启 Proxy Protocol 支持
结论:
如果需求仅是端口穿透和域名路由,直接让 FRPS 接管 80/443 是最简单高效的方案。
Nginx 仅在需要 WAF、安全规则、缓存、负载均衡时才必要。