0
A
回答
2
您可以在前端控制器插件上使用PreDispatch()鉤子。像這樣:
在你的引導
<?php
...
$frontController = Zend_Controller_Front::getInstance();
// Set our Front Controller Plugin
$frontController->registerPlugin(new Mystuff_Frontplugin());
?>
然後裏面的MyStuff/Frontplugin.php
<?php
class Mystuff_Frontplugin extends Zend_Controller_Plugin_Abstract
{
....
public function preDispatch(Zend_Controller_Request_Abstract $request)
{
....
$controllerFile = $this->_GetRequestedControllerFile();
if (!is_file($controllerFile)) {
// Controller does not exist
// re-route to another location
$request->setModuleName('customHandler');
$request->setControllerName('index');
$request->setActionName('index');
}
}
....
}
而且preDispatch()方法是一個方便的位置來處理應用廣泛的認證。
3
這是更好,如果你設置的自定義路徑,例如在你的引導:
protected function _initRoutes() {
$this->bootstrap('frontController');
$front = $this->getResource('frontController');
$router = $front->getRouter();
$router->addRoute(
'neat_url',
new Zend_Controller_Router_Route(
'profile/:username',
array(
'controller' => 'profiles',
'action' => 'view_profile'
)
)
);
}
這樣,你仍然可以有默認路由,並有將重定向下/資料/ JHON一切的自定義路線。 doe然後在你的控制器下使用$ this - > _ getParam('username')獲取參數;
相關問題
- 1. 在PHP中爲單個用戶實現虛榮URL
- 2. 虛榮URL創建
- 3. 虛榮URL和Xampp
- 4. 創建虛榮URL
- 5. 如何實現在Zend框架模型
- 6. 在zend框架工程中實現cron
- 7. 在ZEND框架中實現SAAS
- 8. 虛榮/花式/重寫URL實現不吸收
- 9. htaccess重寫MOD:虛榮URL
- 10. 虛榮URL重新路由
- 11. 虛榮URL,.htaccess問題
- 12. Zend框架指數在URL
- 13. 實現URL在PHP中使用框架
- 14. URL不表現爲預期Zend框架
- 15. 使用zend的博客類型虛榮url
- 16. 如何從Google+虛榮URL獲取ID
- 17. ASP.net中的虛榮簡檔URL
- 18. 使用Zend框架實現MVC
- 19. Zend框架和pthreads庫實現
- 20. 如何在Zend框架中實現連接mysql查詢模型
- 21. 如何在zend框架1中實現ESAPI?
- 22. 如何在Zend框架中實現PDF功能
- 23. 在zend框架中的Url重寫
- 24. 虛擬主機在Zend框架
- 25. Facebook的虛榮URL導致類似框中的問題
- 26. Zend框架不包括URL
- 27. Zend框架URL索引
- 28. Zend框架獲取URL
- 29. Zend框架2 - 通過URL
- 30. 漂亮Zend框架的URL
謝謝蘭斯! 你在哪裏設置插件目錄?我正在使用Zend_Application與application.ini文件,我得到 致命錯誤:Class'ControllerPlugins_Vanityurl'找不到C:\ ***** \ library \ Zend \ Application \ Resource \ Frontcontroller.php在90行(我已經在庫文件夾中有ControllerPlugins目錄。 謝謝! – arendn 2009-08-26 22:46:54
謝謝蘭斯我現在正在工作:-) – arendn 2009-09-10 08:02:05