我认为这是一个简单的路径问题 - 但我花了过去 2 个小时尝试各种组合,但无法解决这个问题。该代码在我的 Windows 系统上运行良好,但是当我将其上传到我在 linux OS 上的托管站点时 - 它找不到 ACL 文件。
这就是在我的 index.php 中定义路径的方式
// 定义应用程序目录的路径 定义('APPLICATION_PATH')|| 定义('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application')); // 确保 library/ 在 include_path 上 set_include_path(implode(PATH_SEPARATOR, array(realpath(APPLICATION_PATH . '/../library'), get_include_path(), )));
这是 application.ini 中的行
resources.frontController.plugins.acl = "Ed_Controller_Plugin_Acl"
这是bootstrap.php相关代码
受保护的函数 _initAutoload() { ………… Zend_Loader_Autoloader::getInstance()->registerNamespace('Ed_'); ………… }
这些是我在 linux 系统上遇到的错误,ACL 不起作用
[2011 年 10 月 1 日星期六 14:26:44] [错误] [客户端 122.164.175.204] PHP 警告:include_once(Ed/Controller/Plugin/Acl.php):无法打开流:/home/ 中没有这样的文件或目录webadmin/dezyre.com/library/Zend/Loader.php 第 146 行 [2011 年 10 月 1 日星期六 14:26:44] [错误] [客户端 122.164.175.204] PHP 警告:include_once():无法打开“Ed/Controller/Plugin/Acl.php”以包含(include_path='/home/webadmin /dezyre.com/application/../library:/home/webadmin/dezyre.com/library:.:/usr/share/pear:/usr/share/php') 在 /home/webadmin/dezyre.com/ library/Zend/Loader.php 在第 146 行 [2011 年 10 月 1 日星期六 14:26:44] [错误] [客户端 122.164.175.204] PHP 致命错误:在 /home/webadmin/dezyre.com/library/Zend/Application/Resource/Frontcontroller 中找不到类“Ed_Controller_Plugin_Acl”。第 117 行的 php
感谢您的宝贵时间