首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Zend Framework错误:无法打开所需的'Zend/Application.php‘

Zend Framework错误:无法打开所需的'Zend/Application.php‘
EN

Stack Overflow用户
提问于 2011-11-19 06:59:59
回答 2查看 15.2K关注 0票数 4

当我尝试运行由Zend Framework创建的项目时,我得到了以下错误。它正在查找Zend/Application.php,它位于我的include_path中的目录中。我确实拥有该目录的读取权限。

PHP致命错误: require_once() function.require:在第24行的/var/www/vhosts/moderncloud.net/om/public/index.php中打开所需的'Zend/Application.php‘Zend/library:’‘失败

代码语言:javascript
复制
<?php


// Define path to application directory
//defined('APPLICATION_PATH')
//    || define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));

defined('APPLICATION_PATH')
    || define('APPLICATION_PATH', 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(
    ('/var/www/vhosts/moderncloud.net/om/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();

解决方案:

我今天自己找到的。我的httpd配置中的"php_admin_value open_basedir“选项有问题。我将其设置为none,然后它开始工作。或者,我想我可以将Zend库目录附加到我的web服务器配置中的open_basedir选项,而不是将其设置为none。

EN

回答 2

Stack Overflow用户

发布于 2011-11-19 22:29:40

如果可能,请删除现有的zend框架安装并使用PEAR安装ZF。以后更新起来会更容易:

代码语言:javascript
复制
 pear channel-discover zend.googlecode.com/svn
 pear install zend/zend

它还将使用PEAR的include_path,因此它应该可以解决您的问题。

如果您不能使用pear,请尝试使用包含路径的相对路径:

代码语言:javascript
复制
 // Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
    realpath(APPLICATION_PATH . '/../library'),
    get_include_path(),
)));
票数 0
EN

Stack Overflow用户

发布于 2011-11-21 16:23:24

产生此问题的原因如下:

index.php文件中的公用文件夹中的

  1. Inside库文件夹:-只需签入库文件夹,库文件夹中有Zend present或not.If not present zend文件夹,然后从zend框架下载并保存在库文件夹中。

=> In index.php复制以下代码并替换它。

代码语言:javascript
复制
<?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';
  require_once 'library/Zend/Application.php';




  // Create application, bootstrap, and run
 $application = new Zend_Application(
 APPLICATION_ENV,
 APPLICATION_PATH . '/configs/application.ini'
      );
                                                                                                                                                                                                                     $application->bootstrap()
        ->run();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8190200

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档