【已解决】frp代理内网websocket,结合nginx使用
本文章向大家介绍frp代理内网websocket,结合nginx使用,主要包括frp代理内网websocket,结合nginx使用使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
A主机,带有公网ip,安装有nginx,ip解析到域名www.a.com
B主机是局域网内的一台主机,部署有一套前后端分离的项目,vue+springboot,安装有nginx
A主机中frps.ini配置参数如下:
[common] bind_addr = 0.0.0.0 bind_port = 7000 vhost_http_port = 6099 authentication_method = token token = 12345678 heartbeat_timeout = 90 user_conn_timeout = 10 tcp_mux = true
B主机中frpc.ini配置参数如下:
[common] server_addr = x.x.x.x # A主机IP server_port = 7000 authentication_method = token token = 12345678 protocol = tcp tcp_mux = true [web] type = http local_port = 80 # 这个端口是B主机上安装的nginx端口 custom_domains = www.a.com # A主机IP对应的解析域名 locations = /
A主机上nginx配置如下:
牵涉到80端口问题,所以配置的是nginx和frp共享80端口
server {
listen 80;
server_name www.a.com;
location / {
proxy_pass http://127.0.0.1:6099; # 监听的是frps中vhost_http_port配置的端口
proxy_redirect http://$host/ http://$http_host/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}
}B主机上nginx代理配置如下:
http {
....
map $http_upgrade $connection_upgrade {
default upgrade; '' close;
}
server {
listen 80;
server_name x.原创不易,完成人机校验,阅读全文