如何使用 proxypass 在子文件夹上配置 Sailsjs?

How to configure Sailsjs on subfolder using proxypass?

我 运行 Laravel 在 Nginx 服务器上,想在子文件夹示例上设置 Sailjs。com/sailsapp/

在 nginx 配置中我有以下内容

location /sailsapp {
    proxy_pass http://localhost:1337;
}

通过访问示例。com/sailsapp/ 我希望 '/': { view: 'pages/homepage' }, 路由加载主页,但我得到 404。

如果我更改 Sailjs '/sailsapp': { view: 'pages/homepage' },主页视图加载正常,但问题是所有资产都指向 example.com 而不是 example.com/sailsapp,这是我的主要问题。

我如何配置 sails 应用程序,以便它实际上知道应用程序的真正基础是什么,而不是将顶级域作为基础。

谢谢

我已经想出如何实现我需要的东西了。

在 Nginx 配置中我需要添加重写,只需将 /sailsapp/(.*) 重写为 / 这允许正确代理请求。

location /sailsapp {
        rewrite /sailsapp/(.*) /  break;
        proxy_pass http://localhost:1337;
}

尽管如此,它仍然对资产没有帮助。

要在 Sails 上配置自动注入资产,我去了 tasks/config/sails-linker.js 并将 fileTmpl: '<script src="%s"></script>', 更改为 fileTmpl: '<script src="/sailsapp%s"></script>'

不确定我是否会遇到更多问题,但这实际上让我可以继续我的应用程序构建。