Zend Web アプリケーションを Linux サーバーに移動した後、レイアウトに JavaScript ファイルを含めようとすると、奇妙な問題が発生します:-
<?php echo $this->headScript()
->appendFile('/js/jquery/jquery.jqDock.min.js'); ?>
コードは私の zend_acl ファクトリーを通過します:-
if($objAcl->isAllowed($role, $request->getModuleName() .'::'.$request->getControllerName() .'::' .$request->getActionName(), 'view')){
//carry on with loading....
}
リクエストオブジェクトは次のようになります:-
$request->module = 'ajfit'
$request->controller = 'js'
$request->action = 'jquery'
$request->_baseUri = '/js/jquery/jquery.jqDock.min.js'
上記のコードがステップオーバーされると、アプリケーションはこの例外をスローします:-
$ex->message = "Resource 'ajfit::js::jquery' not found"
私は確かに、このリソースを $objAcl zend_acl に追加していないことを知っています。また、このリソースへのアクセスを許可していないことも知っていますし、そうしたくありません。これは /public/js/jquery/ に存在するローカル リソースであり、バイパスして非 mvc リソースとして扱う必要があります。
このアプリケーションが Windows で実行されているとき、「/js/jquery/jquery.jqDock.min.js」がローカル リソースであることが認識され、zend_acl を通過しませんでした。
.htaccess ファイルの設定など、構成に何か不足がありますか?
これをつけたまま髪を伸ばしています。
ありがとう。
アンドリュー