如何在TYPO3中为其他语言的入口点设置变体

如何在TYPO3中为其他语言的入口点设置变体,typo3,typo3-9.x,Typo3,Typo3 9.x,项目的最终领域将是: www.domain.com英语,主要语言,L=0 www.domain.de german,L=1 开发/预览域是 dev.domain.com dev.domain.de 可以在站点配置的“常规”选项卡中为主入口点创建变量: 基数: 条件:applicationContext==开发 但是我如何设置第二语言德语的变体呢?这还不可能。有关问题可在以下网址查阅: 同时,我会使用不同的config.yml文件来解决这个问题。这还不可能。有关问题可在以下网址查阅: 同时,我会通

项目的最终领域将是:

www.domain.com英语,主要语言,L=0 www.domain.de german,L=1 开发/预览域是

dev.domain.com dev.domain.de 可以在站点配置的“常规”选项卡中为主入口点创建变量: 基数: 条件:applicationContext==开发


但是我如何设置第二语言德语的变体呢?

这还不可能。有关问题可在以下网址查阅:


同时,我会使用不同的config.yml文件来解决这个问题。

这还不可能。有关问题可在以下网址查阅:


同时,我会通过使用不同的config.yml文件来解决这个问题。

只要您不需要其他特定于语言的配置,就可以在apache配置中设置env vars,并在站点配置中读取它们。这是官方支持的,请参见

站点配置:

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

只要不需要其他特定于语言的配置,就可以在apache配置中设置env vars,并在站点配置中读取它们。这是官方支持的,请参见

站点配置:

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

由于TYPO3 v9.5.5 BaseVariant可以直接在yaml中添加站点语言的基本值,方法与站点中的默认基本属性相同。

由于TYPO3 v9.5.5 BaseVariant可以直接在yaml中添加站点语言的基本值,方法与站点中的默认基本属性相同。

这就是我所寻找的,谢谢默认情况下,Apache配置将缩短两行。不需要.domain.com,因为它从不包含dev:SetEnvIf Host.*BASE\u DOMAIN=www.DOMAIN.com SetEnvIf Host.*BASE\u DOMAIN\u DE=www.DOMAIN.DE SetEnvIf Host dev TYPO3\u CONTEXT=Development SetEnvIf Host dev BASE\u DOMAIN=dev.com SetEnvIf Host dev BASE\u DOMAIN\u DE=dev.DOMAIN 10.4.2缓存:这就是我想要的,谢谢!默认情况下,Apache配置将缩短两行。不需要.domain.com,因为它从不包含dev:SetEnvIf Host.*BASE\u DOMAIN=www.DOMAIN.com SetEnvIf Host.*BASE\u DOMAIN\u DE=www.DOMAIN.DE SetEnvIf Host dev TYPO3\u CONTEXT=Development SetEnvIf Host dev BASE\u DOMAIN=dev.com SetEnvIf Host dev BASE\u DOMAIN\u DE=dev.DOMAIN 10.4.2缓存:哇,谢谢,太棒了!我刚试过,效果很好。但有一件事需要记住:如果您在事后通过sitemanager编辑某些内容(例如,如果您在未发出警告的情况下编辑错误处理),则该内容将被覆盖。出于这个原因,我会暂时支持Mikel的解决方案。关于这一点,与。在这种情况下,我不确定是否应该为已解决的问题添加关系。只是想让你知道:-哇,谢谢,太好了!我刚试过,效果很好。但有一件事需要记住:如果您在事后通过sitemanager编辑某些内容(例如,如果您在未发出警告的情况下编辑错误处理),则该内容将被覆盖。出于这个原因,我会暂时支持Mikel的解决方案。关于这一点,与。在这种情况下,我不确定是否应该为已解决的问题添加关系。只是想让你知道:-