我在全新安装 Zend 框架时遇到了“包含”路径问题。我正在运行 Ubuntu 并使用 Netbeans。我通过终端安装了 Zend,并将相应的文件复制到了我的新项目中。
我目前正在尝试访问 localhost/demoZend/public
Warning: require_once(Zend/Application.php): failed to open stream: No such file or directory in /home/mastered/public_html/demoZend/public/index.php on line 18
Fatal error: require_once(): Failed opening required 'Zend/Application.php' (include_path='/home/mastered/public_html/demoZend/library:.:/opt/lampp/lib/php') in /home/mastered/public_html/demoZend/public/index.php on line 18
我已将带有框架的“Zend”文件夹复制到我的项目/库文件夹中,因此文件夹结构为 /demoZend/library/Zend/
我还根据教程的建议更改了 php.ini 中的“包含”路径。但是,这是我感到困惑的地方。
路径写道:
include_path = ".:/usr/share/php:/usr/share/php/libzend-framework-php/"
在我的 apache2/php.ini以及我的 /etc/php5/cli/php.ini 文件中。
我的项目中的 index.php 文件如下所示:
<?php
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
// Define application environment
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
/** Zend_Application */
require_once 'Zend/Application.php';
// Create application, bootstrap, and run
$application = new Zend_Application(
APPLICATION_ENV,
APPLICATION_PATH . '/configs/application.ini'
);
$application->bootstrap()
->run();
我没有改变它,因为文件路径似乎没问题。我还应该指出,我的 Web 文档存储在我的 '~/public_html' 目录中,我已经检查了我的 'demoZend/library' 文件夹的权限,并且它们已关闭所有限制。