当站点在目录下运行时,如何强制 Zend Router 组装正确的 url?
这就是我的意思:
$this->view->url(array('controller' => 'controller', 'action' => 'action'), null, true)
通常会返回类似于/controller/action
在我的情况下返回的内容/tbogdanov/brandenburg/controller/action
,因为该站点正在目录中运行/tbogdanov/brandenburg
。
这实际上是一个很好的 URL,我对此没有任何问题。但是,当传递给$this->_redirect()
重定向器时,只会再次添加目录。所以,最终的重定向 url 现在看起来像这样/tbogdanov/brandenburg/tbogdanov/brandenburg/controller/action
:
现在,这是不正确的。
有没有我可能会丢失的设置?似乎 zend 知道它在目录/子目录中运行,但在某些时候,它仍然忽略它。我正在寻找一个好的通用解决方案,没有str_replace
人!
即使在某些时候项目被移动到根目录中(这将会发生),该方法也应该正常工作。