多站点上的 Spartacus 运行 dev:ssr 未从 NgExpressEngineDecorator 传递 requestOrigin
Spartacus running dev:ssr on multisite not passing requestOrigin from the NgExpressEngineDecorator
我正在 运行使用 Spartacus SSR Multisite。
当我 运行 宁 yarn build:ssr
和 yarn serve:ssr
时,这工作正常。
Spartacus NgExpressEngineDecorator 很好地将原始主机名传递给应用程序。
但是当我 运行 yarn dev:ssr
出于调试目的时,这失败了。
SERVER_REQUEST_ORIGIN总是returnslocalhost或127.0.0.1。
https://github.com/SAP/spartacus/blob/develop/core-libs/setup/ssr/engine-decorator/ng-express-engine-decorator.ts#L108
所以找不到baseSite。
在 angular.json 中的“serve-ssr”上设置“host”和“publicHost”选项似乎也无济于事。有什么想法可以解决这个问题吗?
如果我有一个像样的方法来调试多站点 SSR,我会很高兴。
正如@Krzysztof Platis 提到的,将 server.set('trust proxy', 'loopback');
放入 server.ts
解决了我的问题
我正在 运行使用 Spartacus SSR Multisite。
当我 运行 宁 yarn build:ssr
和 yarn serve:ssr
时,这工作正常。
Spartacus NgExpressEngineDecorator 很好地将原始主机名传递给应用程序。
但是当我 运行 yarn dev:ssr
出于调试目的时,这失败了。
SERVER_REQUEST_ORIGIN总是returnslocalhost或127.0.0.1。
https://github.com/SAP/spartacus/blob/develop/core-libs/setup/ssr/engine-decorator/ng-express-engine-decorator.ts#L108
所以找不到baseSite。
在 angular.json 中的“serve-ssr”上设置“host”和“publicHost”选项似乎也无济于事。有什么想法可以解决这个问题吗?
如果我有一个像样的方法来调试多站点 SSR,我会很高兴。
正如@Krzysztof Platis 提到的,将 server.set('trust proxy', 'loopback');
放入 server.ts
解决了我的问题