我最近開始了一個新的zend框架項目。我通過ZF工具創建了所有的db-table模型,模型,控制器,動作,表單和啓用的佈局。我創建的所有項目都顯示在.zf-project.xml中。奇怪的Zend框架行爲 - 找不到索引控制器動作
然後我設置了默認佈局的第一個頁眉和頁腳。在此佈局的底部是與例如幾個鏈接頁腳NAV部分:
<a href="/howitworks">How it Works</a>
當該被點擊它應該導航到索引控制器/ howitworksAction但是它不。相反,我得到一個錯誤,說明:
Message: Invalid controller specified (howitworks)
Stack trace:
#0 /usr/share/php/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#1 /usr/share/php/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
#2 /usr/share/php/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#3 /var/www/vhosts/lokals.mediagiantdesign.com/httpdocs/public/index.php(26): Zend_Application->run()
#4 {main}
Request Parameters:
array (
'controller' => 'howitworks',
'action' => 'index',
'module' => 'default',
)
如果我強制URL/index/howitworks它工作正常。由於這是我創建的第一個Zend應用程序,因此我完全被拋棄了。在以前的應用程序中,這種鏈接可以直接使用。我還沒有設置自定義路由器,引導程序是準系統。所以我不知道爲什麼這不起作用。
我以爲zend首先尋找一個匹配控制器的控制器,如果沒有發現它在索引中尋找匹配的動作,如果沒有找到,它會認爲它是/ public中的文件。如果是這樣的話,那麼我在這裏錯過了什麼?
在此先感謝。 Rick
Ahhhh ..那就是我錯過了。以前我使用的是修改ErrorController的預構建ACL模塊 - 添加無授權操作,並修改EXCEPTION_NO_CONTROLLER case語句,如下所示: 'code' $ this - > _ forward($ this-> getRequest() - >控制器, '索引'); 休息; – MediaGiantDesign