我已使用我的域 iguana-centauri 使用 TrueNAS Scale 24.10.2 和 Tailscale 配置了我的服务器“Ada”。
我可以通过完美访问它ada.iguana-centauri.ts.net
。
我将 TrueNAS Web 管理员的 HTTP 端口从 80 移到了 8090(并将 NPM 的 HTTP 端口从 30021 移到了 80),现在我可以轻松地通过 访问 TrueNAS Web 管理员ada.iguana-centauri.ts.net:8090
,通过 访问 NPM 管理员ada.iguana-centauri.ts.net:30020
,并通过 访问 NPM“祝贺”页面ada.iguana-centauri.ts.net
。完美。
然后,我在 NPM 中配置了一个代理主机,其域名为ada.iguana-centauri.ts.net
,HTTP 模式为 ,转发主机名/IP 指向192.168.68.68
(TrueNAS 内网 IP),端口为 8090,并启用了 WebSockets 支持和阻止常见漏洞。这样就可以完美地访问 TrueNAS webadmin 了。(Nginx 仍然可以通过 :30020 访问。)
然后,一切都乱套了。
当我尝试配置自定义位置以通过访问 NPM 本身时ada.iguana-centauri.ts.net/nginx
,一切都停止工作:
ada.iguana-centauri.ts.net
开始返回 NPM“祝贺”页面,就像直接通过 IP 访问一样。ada.iguana-centauri.ts.net/nginx
返回一个空白页,该页面似乎包含一些 NPM 管理器界面的 MHTML,但没有任何内容可以正确加载,并且浏览器抱怨text/html
外部资源的 MIME 类型()不匹配(X-Content-Type-Options:nosniff),显然错误地重写了它们的 URL。
我尝试了各种方法,例如下面的自定义规则脚本,但一切都变得更糟,导致 404 或 502 错误:
rewrite ^/nginx(/.*)?$ $1 break;
proxy_http_version 1.1;
proxy_set_header Host localhost;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Prefix /nginx;
/nginx
最终,我的目标是通过子路径( 、等)访问服务/nextcloud
,但现在我陷入了困境。
帮助!