本地 JavaScript 文件正在经历zend_acl



当我的布局尝试包含javascript文件时,将我的zend Web应用程序移动到Linux服务器后,我遇到了一个奇怪的问题:-

<?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 文件中的设置?

我戴着这个把头发。

谢谢。

安德鲁

你的 .htaccess 一定有问题,你有这些行吗?

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

如果是,您的 apache 是否配置为允许使用 htaccess?

相关内容

  • 没有找到相关文章

最新更新