Hybris的多个国家/地区站点

时间:2019-03-08 08:23:27

标签: hybris

我的Hybris项目中有一个网站,其网址格式如下:

localhost:9002/en-uk

在mystorefront project.properties 文件中,店面上下文根也保留为en-uk。

如何将其扩展到其他国家/地区并为我的新国家/地区创建一个新站点。我尝试更改现有站点的impex并更改其中的URL,但没有产生任何效果。

是否应该如上所述在mystorefront project.properties 文件中更改店面上下文根?

1 个答案:

答案 0 :(得分:1)

如果您具有单个店面扩展名,那么店面上下文对于所有站点都是通用的。因此,我建议将其保留为根(/)。如果您确实想拥有一些店面上下文,请保持其通用。不要包含国家/地区代码,因为当有人使用/ en-uk访问美国网站时,这没有意义。


1)将店面上下文设置为root

  1. 将HAC Webroot从/更改为/hac
  2. 将店面的webroot和StorfrontContextRoot设置为空白
  3. 更改每个cmsStore的网站和媒体URL
  4. 制作127.0.0.1 localhost us.local uk.local的主机文件条目

local.properties

hac.webroot=/hac

#change <yourproject> with your storefront extension prefix
<yourproject>storefront.webroot=

#If you are using B2C then below propery would be StorefrontContextRoot
b2bStorefrontContextRoot=

#change usCMSSiteUI with your us CMS site uid and similar for UK
website.usCMSSiteUID.http=http://us.local:9001
website.usCMSSiteUID.https=https://us.local:9002
media.usCMSSiteUID.http=http://us.local:9001
media.usCMSSiteUID.https=https://us.local:9002

website.ukCMSSiteUID.http=http://uk.local:9001
website.ukCMSSiteUID.https=https://uk.local:9002
media.ukCMSSiteUID.http=http://uk.local:9001
media.ukCMSSiteUID.https=https://uk.local:9002

2)为每个CMSSite配置唯一的URL模式

希望每个站点都有CMSSite实例。对于每个站点,必须配置URL模式。

例如 enter image description here

英国CMSsite

(?i)^https?://[^/]+(/[^?]*)?\?(.*\&)?(site=UK)(|\&.*)$
(?i)^https?://uk\.local:9002$

美国CMS网站

(?i)^https?://[^/]+(/[^?]*)?\?(.*\&)?(site=US)(|\&.*)$
(?i)^https?://us\.local:9002$

3)启动服务器并访问它

如果您如上所述正确配置了网站,则可以按以下方式访问它

https://us.local:9002 https://uk.local:9002

对于生产设置,您可以为每个站点URL模式配置(子)域,或者通过传递?site = us uk 。