Цепочка маршрутов Zend Framework в application.ini - PullRequest
2 голосов
/ 07 октября 2010

Я устанавливаю язык в зависимости от имени домена (en для en.example.com, tr для tr.example.com):

resources.router.routes.plain.type = "Zend_Controller_Router_Route"
resources.router.routes.plain.route = "/:module/:controller/:action"
resources.router.routes.plain.defaults.language= "en"
resources.router.routes.plain.defaults.module = "content"
resources.router.routes.plain.defaults.controller = "index"
resources.router.routes.plain.defaults.action = "index"

resources.router.routes.plain1.type = "Zend_Controller_Router_Route"
resources.router.routes.plain1.abstract = 1
resources.router.routes.plain1.route = "/:module/:controller/:action/*"
resources.router.routes.plain.defaults.module = "content"
resources.router.routes.plain.defaults.controller = "index"
resources.router.routes.plain.defaults.action = "index"

resources.router.routes.dom0.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.dom0.abstract = 1
resources.router.routes.dom0.route = "en.example.com"
resources.router.routes.dom0.defaults.language= "en"
resources.router.routes.chn1.type = Zend_Controller_Router_Route_Chain
resources.router.routes.chn1.chain = "dom0, plain1"

resources.router.routes.dom1.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.dom1.abstract = 1
resources.router.routes.dom1.route = "tr.example.com"
resources.router.routes.dom1.defaults.language= "tr"
resources.router.routes.chn2.type = Zend_Controller_Router_Route_Chain
resources.router.routes.chn2.chain = "dom1, plain1"

проблема здесь, когда я вызываю URL только с modulenameи без указания контроллера или действия: tr.example.com/content/ Я получаю язык, установленный на «en»

Но когда я звоню с именем модуля, контроллером и действием: tr.example.com/content/article/ читать все нормально

Что я делаю не так?

Заранее спасибо

1 Ответ

1 голос
/ 19 октября 2011

Вы не указали модуль, контроллер и действие по умолчанию для plain1.

...