Zend Framework中子域的路由模块

时间:2009-10-15 09:20:21

标签: php zend-framework routing

我无法让Zend_Controller_Router_Route_Hostname正常工作。

我正在使用Zend Framework 1.9.4

在我的配置中,我有:

resources.router.routes.www.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.www.route = ":module.domain"
resources.router.routes.www.defaults.module = "frontend"

resources.router.routes.www.chains.index.type = "Zend_Controller_Router_Route"
resources.router.routes.www.chains.index.route = ":controller/:action/*"
resources.router.routes.www.chains.index.defaults.controller = "index"
resources.router.routes.www.chains.index.defaults.action = "index"

起初看起来似乎工作得很好。我有两个模块:

services.domain
admin.domain

和默认模块前端,回答其他所有不存在的内容。

我可以访问services.domain/mycontroller/myaction/并从正确的模块中获得正确的控制器和操作。

但这是我的问题: 我无法指定参数。 F.x如果我去:

services.domain/mycontroller/myaction/key1/value1/key2/value2

我将得到一个无效的控制器异常,因为它然后尝试在前端模块中找到mycontroller - 而不是服务模块。

我尝试使用Zend_Controller_Router_Route并告诉它接收一个特定的参数 - 这很好用,但我只是希望能够像默认设置那样动态地拥有所有参数。

我的设置有什么问题?

2 个答案:

答案 0 :(得分:1)

经过一整天的狩猎,我发现这不是我,这是几个月前已经提交过的一个错误。

http://framework.zend.com/issues/browse/ZF-6654

我希望这可以帮助别人。

答案 1 :(得分:0)

此错误的修复程序将于1月26日/ 1月发布。

见这里:http://framework.zend.com/issues/browse/ZF/fixforversion/10360