问题出在 /web-static/dynaform/class.js 这个JS下面,它做了前端判别,如果 host 不正确就会强制跳转到 tplogin.cn,然而这个域名在公网是没有解析的,因此没法直接穿透。
解决方法就是修改这个 JS 文件,在其 PageFunc 函数下有一句this.gDomainDNS=“tplogin.cn”,将变量内容替换为自己的域名就行。
这个修改直接借助 Nginx 改写一下就行:
server {
listen 8081; #frpc 转发此端口
server_name demo.com;
location / {
proxy_pass http://192.168.1.1; # 路由器的IP
sub_filter 'tplogin.cn' 'demo.com';
sub_filter_types *;
}
}