【问题标题】:How to set culture / locale in Symfony depending on subdomain?如何根据子域在 Symfony 中设置文化/语言环境?
【发布时间】:2012-10-17 08:38:13
【问题描述】:

我正在使用 Symfony 2.1,我想知道是否有办法根据子域设置文化/区域设置。

例子:

us.xxxxxxxxx.com -> 美国英语 (en_US)
uk.xxxxxxxxx.com -> 英国英语 (en_GB)
es.xxxxxxxxx.com -> 西班牙西班牙语 (es_ES)
ar.xxxxxxxxx.com -> 阿根廷西班牙语 (es_AR)

我的意思是,在通配符中,我可以获取国家/地区,然后为站点设置文化和区域设置。

我已经阅读了 Symfony 2.1 的文档,但我不明白我应该怎么做。

【问题讨论】:

  • 我强烈推荐 JMSI18nRoutingBundle 完成这项任务。
  • 感谢您的回答@Crozin。过去两个小时我一直在使用 JMSI18nRoutingBundle,但我无法使其正常工作。文档不是很完整。你有什么我应该如何配置的例子吗?

标签: symfony localization


【解决方案1】:
jms_i18n_routing:
    default_locale: en
    locales: [en, de]
    strategy: custom
    hosts:
        en: en.foo.com
        de: de.foo.com
    redirect_to_host: true

【讨论】:

  • 谢谢@Max。我之前已经这样做了,但是当我输入“de.foo.com”时,它会将我重定向到“en.foo.com”。我的意思是,它总是显示英文页面。如果将 redirect_to_host 设置为 false,则会出现 404 错误。我认为我的配置中缺少一些东西。我是否必须更改捆绑路由部分中的任何内容?
猜你喜欢
  • 2012-12-25
  • 2018-11-27
  • 2013-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多