Как настроить варианты точек входа для дополнительных языков в TYPO3

Конечными доменами проекта будут:

  1. www.domain.com (английский, основной язык, L = 0)
  2. www.domain.de (немецкий, L = 1)

Домены разработки / предварительного просмотра:

  1. dev.domain.com
  2. dev.domain.de

На вкладке «Общие» конфигурации сайта можно создать вариант для основной «Точки входа»: База: https://dev.domain.com/ Условие: applicationContext == "Разработка"

Но как я могу настроить вариант для второго языка (немецкого)?


person Ben    schedule 24.02.2019    source источник


Ответы (3)


пока вам не нужна конфигурация для другого языка, вы можете установить переменные env в конфигурации apache и прочитать их в конфигурации вашего сайта. Это официально поддерживается (см. здесь)

Конфигурация сайта:

base: 'https://%env(BASE_DOMAIN)%/'
languages:
  -
    base: 'https://%env(BASE_DOMAIN_DE)%/'

Конфигурация Apache (пример):

SetEnvIf Host ".*" TYPO3_CONTEXT=Production
SetEnvIf Host ".*" BASE_DOMAIN=www.domain.com
SetEnvIf Host ".*" BASE_DOMAIN_DE=www.domain.de
SetEnvIf Host "dev.domain.com" TYPO3_CONTEXT=Development
SetEnvIf Host "dev.domain.com" BASE_DOMAIN=dev.domain.com
SetEnvIf Host "dev.domain.de" TYPO3_CONTEXT=Development
SetEnvIf Host "dev.domain.de" BASE_DOMAIN_DE=dev.domain.de
person Mikel Wohlschlegel    schedule 25.02.2019
comment
Это то, что я искал, спасибо! Конфигурация Apache может быть сокращена на две строки (по умолчанию используется production, .domain.com не нужен, потому что он никогда не содержит dev): SetEnvIf Host ".*" BASE_DOMAIN=www.domain.com SetEnvIf Host ".*" BASE_DOMAIN_DE=www.domain.de SetEnvIf Host "dev" TYPO3_CONTEXT=Development SetEnvIf Host "dev" BASE_DOMAIN=dev.domain.com SetEnvIf Host "dev" BASE_DOMAIN_DE=dev.domain.de - person Ben; 25.02.2019
comment
В 10.4.2 это кешируется: forge.typo3.org/issues/91443 - person Ben; 19.05.2020

Пока это невозможно. Связанную проблему можно проверить на странице https://forge.typo3.org/issues/86400.

А пока я бы решил эту проблему, используя разные config.yml файлы.

person Georg Ringer    schedule 24.02.2019

Начиная с TYPO3 v9.5.5 baseVariants можно добавлять непосредственно в yaml для «базовых» значений языков сайта, точно так же, как свойство «base» по умолчанию на сайте.

person Benni    schedule 07.03.2019
comment
Вау, спасибо, это здорово! Я просто попробовал, и это сработало как шарм. Однако следует иметь в виду одну вещь: он будет перезаписан, если вы впоследствии что-то отредактируете через Sitemanager (например, если вы измените обработку ошибок) без предупреждения. По этой причине я пока останусь с решением Микеля. - person Ben; 08.03.2019
comment
В связи с этим ваша проблема 87831 связана с Ошибка 86400. Я не уверен, следует ли мне добавить ссылку на Решенную проблему в этом случае. Просто хотел, чтобы вы знали :-) - person Ben; 08.03.2019