1

设置:我在家庭局域网的 fritzBox 后面使用自托管代码服务器(dockerized)。我有一个 FQDN (mysub.mydomain.com) 指向一个带有 cname 条目的 dyndns (mysdyn.my-router.com),该条目最终位于 fritzBox 上,端口通过启用了letsencrypt 的 nginx 反向代理转发到 docker 机器。

代码服务器工作正常,可通过 mysub.mydomain.com 获得。使用 live-server 插件可以很好地工作@code-server,并且可以通过 mysub.mydomain.com/proxy/3000/ 访问(3000 是一个示例端口)。热重载和 Javascript 工作。

问题:在 nuxt.js 项目(通用)上工作,当我运行“yarn dev”时,开发服务器正常启动,并且可以通过 mysub.mydomain.com/proxy/3000/ 访问该页面并显示正确。但是由于所有 .js 文件的 404,“热重载”以及所有 java 脚本都不起作用。

浏览器正在寻找所有 .js 文件,例如https://mysub.mydomain.com/_nuxt/runtime.js正确导致 404,因为 coorect 位置将是https://mysub.mydomain.com/proxy/ 3000/_nuxt/runtime.js

是什么导致了这种行为,我该如何解决这个问题?我什至不知道从哪里开始。Nginx 还是 Nuxt?我已经尝试过使用 config.nuxt.js 中的路由器设置 - 不走运。

感谢您的帮助!

4

1 回答 1

0

那么,mysub.mydomain.com/proxy/3000/Nginx 配置背后是托管网站吗?
如果是这种情况,则不能使用yarn dev. 此命令针对本地开发服务器。

您不能通过某些 DNS、反向代理、端口转发等在托管生产应用程序上运行 HMR。或者至少,这就是它的目标。

即使通过热重载code-server也不是主流。所以是的,你也许可以尝试一些 hacky 的东西并实现它,但你最终还是会遇到相当多的错误,并且性能可能会低于标准。
您不想坚持使用一些本地运行的应用程序吗?

于 2021-09-05T21:27:52.550 回答