最後に別の変数を使用していくつかのルートをチェーンすることに問題があります。ワイルドカードサブドメインを使用しています。このように:http: //eric.mysite.dev/mypage1mypage1はGET変数になります。だから私が欲しいのはhttp://mysite.dev/donate/now/index/id/eric/pagename/mypage1です
次のようなページ名がなくても正常に動作しています。
$router=$fc->getRouter();
// Host routes
$accountHostRoute = new Zend_Controller_Router_Route_Hostname(':urlname.mysite.dev', array('module' => 'donate', 'controller' => 'now', 'action' => 'index'), array('urlname'=>'(?!www$).*')
);
// Account routes
$router->addRoute('donateWithHostNameLocal', $accountHostRoute->chain(
new Zend_Controller_Router_Route_Hostname(
':urlname.mysite.dev',
array(
'module' => 'donate',
'controller' => 'now',
'action' => 'index'
)
)
));
しかし、ページ名も必要なので、これを試しましたが、機能しません。
// Account dynamic pages routes
$router->addRoute('donateWithHostNamePageNameLocal', $accountHostRoute->chain(
new Zend_Controller_Router_Route_Hostname(
':urlname.mysite.dev/:pagename',
array(
'module' => 'donate',
'controller' => 'now',
'action' => 'index'
)
)
));
次のアプリケーションエラーが発生します:メッセージ:リソース'デフォルト:mypage1'が見つかりません
スタックトレース:0 /Applications/MAMP/bin/php5/lib/php/ZendFramework-1.9.6/library/Zend/Acl.php(751):Zend_Acl-> get('default:mypage1')1 / Applications / MAMP /htdocs/mysite/application/modules/default/plugins/AccessCheck.php(15):Zend_Acl-> isAllowed('guest'、'default:mypage1'、'index')2 / Applications / MAMP / bin / php5 / lib /php/ZendFramework-1.9.6/library/Zend/Controller/Plugin/Broker.php(309):Plugin_AccessCheck-> preDispatch(Object(Zend_Controller_Request_Http))3 / Applications / MAMP / bin / php5 / lib / php / ZendFramework- 1.9.6 / library / Zend / Controller / Front.php(933):Zend_Controller_Plugin_Broker-> preDispatch(Object(Zend_Controller_Request_Http))4 /Applications/MAMP/bin/php5/lib/php/ZendFramework-1.9.6/library/Zend /Application/Bootstrap/Bootstrap.php(77):Zend_Controller_Front->dispatch()5 /Applications/MAMP/bin/php5/lib/php/ZendFramework-1.9.6/library/Zend/Application.php(358):Zend_Application_Bootstrap_Bootstrap-> run()6 / Applications / MAMP / htdocs / mysite / public / index.php(34):Zend_Application-> run()7 {main}
リクエストパラメータ:array('controller' =>'mypage1'、'action' =>'index'、'module' =>'default'、)