- Sever
- Client
- 1、使用域名访问(success)
- 2、使用服务端ip+端口访问(success)
- 3、使用域名+端口访问(failed)
- 猜测:
- 总结
配置了7000端口进行sc服务交互,
配置nginx容器映射80端口,容器内部nginx监听容器80端口根据域名转发到宿主机19527端口
配置19527为http监听端口
配置19528为https监听端口
配置6500为ssh监听端口
配置客户代理host:localhostport:19527端口
配置服务端ipxxxx[上面的服务器ip]
配置服务端代理服务端口7000服务器配置相同
配置外网访问web的端口为19527
配置外网访问web的域名为
域名映射地址为服务端
1、使用域名访问(success)服务端使用nginx对匹配域名转发到了19527端口,也就是服务端代理客户端的端口,请求此时被转发到客户端的19527端口,web服务发布在客户端19527端口;
所以此时使用域名可以直接访问项目;
直接访问到了服务端代理客户端的19527端口,所以此时可以直接访问项目
3、使用域名+端口访问(failed)域名首先被解析成ip,此时请求发往服务端ip+代理的端口,按理说是可以访问到的,可是却失败了;
猜测:-按理说现在应该可以访问的,但是却显示了frp的错误页面;尝试关闭树莓派,发现页面依旧存在,也就是说现在页面并没有到达客户端
-客户端的配置中有一项是配置外网访问时的域名,也许和这个有关;
-服务端只转发ip形式的端口直接访问,如果使用域名,sever无法解析;
-直接使用域名访问时80端口被监听,定位到了我们指定的代理端口以ip+port的方式访问代理端口,并且不带有域名参数
-使用域名+id的方式访问端口,并没有代理,直接到达了服务器,并且携带了域名参数转发服务器对客户端配置的域名进行匹配,无法匹配到正确的路由,所以报错;
测试:在nginx中监听域名后的端口,进行转发[可以正常访问]
待更新…
总结还是https://ngrok.com/好用阿。。慎用这个。。。



