Многострановой сайт в Hybris - PullRequest
1 голос
/ 08 марта 2019

В моем проекте Hybris есть сайт с шаблоном URL, например:

localhost:9002/en-uk

Где корень контекста витрины магазина также сохранен как en-uk в проекте mystorefront .properties file.

Как мне расширить это для других стран и создать новый сайт для моей новой страны. Я пытался изменить существующий импекс и изменить URL-адрес, но он ничего не дал.

Следует ли изменить корень контекста витрины в файле mystorefront project.properties , как указано выше?

1 Ответ

1 голос
/ 08 марта 2019

Если у вас одно расширение витрины, то контекст витрины магазина является общим для всех сайтов.Поэтому я бы предложил сохранить его как root (/).Если вы действительно хотите иметь некоторый контекст витрины, то оставьте его универсальным.Не включайте код страны / языка, так как это не имеет смысла, когда кто-то обращается к сайту в США с помощью /en-uk.


1) Установите контекст магазина на корень

  1. Измените веб-корень HAC с / на /hac
  2. Установите пустое значение для веб-корня магазина и StorfrontContextRoot
  3. Измените URL веб-сайта и мультимедиа для каждого cmsStore
  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

UK CMSsite

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

US CMSsite

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

3) Запустите сервер и получите к нему доступ

Если вы правильно настроили свои сайты, как я упоминал выше, то вы можетедоступ к нему, например,

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

Для настройки производства можно настроить (суб) домены для каждого шаблона URL сайта или воспользоваться помощью веб-сервера для разрешения запросов.передавая ? site = us или uk .

...