本文介绍如何配置多个 endpoint
以应用多个 JavaScript 店面。
具体步骤
将所有端点配置为指向 JS Storefront 服务。
- www.brand1.com → Javascript 店面
- www.brand2.com → Javascript 店面
在 JavaScript service properties
中配置 endpoint
到店面的映射。
在云门户中,抉择 environment
,而后抉择 service configuration
视图配置 JavaScript 店面。
按以下格局增加您的属性:
jsapps.<application>.severname.<index>=<server name>
例如:
jsapps.app1.servername.1=www.brand1.de
jsapps.app2.servername.0=www.brand2.com
jsapps.app2.servername.1=www.brand2.de
如果不提供任何配置,默认状况下,对服务器名称 <application.name.*>
的申请将路由到该特定应用程序。
例如,app1 和 app2 利用的映射形式如下:
- 服务器名称 app1.* 的申请被路由到 app1 应用程序,
- 服务器名称 app2.* 的申请被路由到 app2 应用程序。
<server name>
变量要么是精确的服务器名称,要么是 Nginx <server_name>
指令的正确正则表达式。无关详细信息,请参阅 http://nginx.org/en/docs/http… 非 SAP 站点上公布的信息。
在 CCV2 上启用 Spartacus SSR (Server Side Rendering,服务器端渲染) 的配置办法,在文件 js-storefront/manifest.json
内增加下列设置:
{
"applications": [
{
"name": "<your storefrontapp name>",
"path": "<your storefrontapp path>",
"ssr": {
"enabled": true,
"path": "dist/<your storefrontapp name>/<your storefrontapp name>-server/main.js"
}
}
]
}
应用客户端出现 (CSR),网站在浏览器中出现,而不是在服务器端。因而,Web 服务器通过发送蕴含 JavaScript 代码的轻量级 HTML 响应来响应连贯申请。浏览器通过在客户端出现代码并将其出现在网页上来创立内容。
因而,须要在上述的 manifest.json 文件里增加下列设置:
{
"applications": [
{
"name": "<your storefrontapp name>",
"path": "<your storefrontapp path>",
"csr": {"webroot": "dist/<your storefrontapp name>/browser/"}
}
]
}
csr.webroot
的字段值应该和 angular.json 文件中 projects.<application_name>.architect.build.options.outputPath
的值统一。
配置实现后,所有定义在 webroot
字段中的文件会被部署。
在 manifest.json 里还能为某一具体的 Application,指定 Node.js 版本:
{
"applications": [
{
"name": "cxlive",
"path": "cxlive"
},
{
"name": "app1",
"path": "app1"
},
{
"name": "app2",
"path": "app2",
"nodeVersion": "11"
}
],
}