使用Zend主机名路由和休息路由

时间:2011-10-26 12:53:39

标签: php zend-framework

我正在尝试将子域路由到基本的休息路径模块。

到目前为止,我能够正常工作的是将子域路由到具有正确路由的模块。

到目前为止我得到了什么:

resources.router.routes.api.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.api.route = "api.mysite.dev"
resources.router.routes.api.defaults.module = "api"
resources.router.routes.api.chains.index.type = "Zend_Controller_Router_Route"
resources.router.routes.api.chains.index.route = "v0.1/:controller/:action/*"
resources.router.routes.api.chains.index.defaults.controller = "index"
resources.router.routes.api.chains.index.defaults.action = "index"

这很好用,因为如果我转到http://api.mysite.dev/v0.1/它会正确路由到api模块的索引控制器。但是,我没有成功路由到Rest路线。

我原以为这是常见的做法。

1 个答案:

答案 0 :(得分:0)

对于任何有兴趣的人来说,这对我有用:

resources.router.routes.api-v010-hostname.type = "Zend_Controller_Router_Route_Hostname"
resources.router.routes.api-v010-hostname.route = "api.mysite.dev"
resources.router.routes.api-v010-hostname.chains.api-v010-version.type = "Zend_Controller_Router_Route"
resources.router.routes.api-v010-hostname.chains.api-v010-version.route = "v0.1"
resources.router.routes.api-v010-hostname.chains.api-v010-version.chains.api-v010-rest.type = "Zend_Rest_Route"
resources.router.routes.api-v010-hostname.chains.api-v010-version.chains.api-v010-rest.defaults.module = "api-v010"

这成功地将http://api.mysite.dev/v0.1/路由到模块api-v010,但它没有将默认控制器分配给索引。我已经尝试在Zend_Controller_Router_Route上定义默认控制器但没有成功。酒吧,它是一种享受。