- 官方issues中已经有相关问题的解答了:https://github.com/fatedier/frp/issues/53
- 参考:https://miss.cat/frp-use-80-port-with-nginx/
- 配置 Nginx
server {
listen 80;
server_name *.frp.example.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host:80;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_hide_header X-Powered-By;
}
}
非常简单的一个 server 模块,监听 *.frp.example.com 并转发给 127.0.0.1:8080,所以接下来只要将 frp 默认监听 80 端口改成 8080 端口就好了。
- 配置 frp 服务端:
[common]
bind_addr = 0.0.0.0
bind_port = 7000
vhost_http_port = 8080
subdomain_host = frp.example.com
[abc]
type = http
subdomain = abc
auth_token = XXX
这基本就是一个最小配置了,重点在于将 vhost_http_port 设为 8080,其它基本是一致的。
- 配置 frp 客户端:
[common]
server_addr = 123.123.123.123
server_port = 7000
auth_token = XXX
[abc]
type = http
local_port = 80
subdomain = abc
最后这是 frp 客户端的配置文件,没什么特殊之处,以备后用。现在直接访问 abc.frp.example.com 就可以访问到本地的网站咯~