我的索引文件是这个
<?php
ini_set( "short_open_tag", 1 );
ini_set( "display_errors", 1 );
// 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'
);
// Let 'er rip
$application->bootstrap()->run();
当我运行
时警告:require_once(Zend / Application.php):无法打开流:第18行/var/www/Giftercity_backup/index.php中没有此类文件或目录致命错误:require_once():打开所需的'Zend失败第18行的/var/www/Giftercity_backup/index.php中的/Application.php'(include_path =':。:/ usr / share / php:/ usr / share / pear')
答案 0 :(得分:6)
对于Ubuntu
如果您安装ZendFramework
包。即sudo apt-get install zend-framework
它会将zend库文件放在/usr/share/php/libzend-framework-php/Zend/ folder
中
你必须复制并粘贴Zend/ folder into /user/share/php/
在终端中运行以下命令。
cd /usr/share/php
sudo cp -R libzend-framework-php/Zend/ Zend
答案 1 :(得分:1)
将索引文件放在“public”目录中。
或者,如果您想要或不能包含父目录中的文件,则需要更改此行:
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
要
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/library'), // Here we have change
get_include_path(),
)));
当然我假设您已经将Zend文件放入库/ Zend
您还需要记住将带有“全部拒绝”的.htaccess文件放到您不希望用户访问的应用程序,库和任何其他目录中。
顺便说一下。 这种包含库的方法很老,不推荐使用。
答案 2 :(得分:0)
如果您的index.php
文件位于/var/www/Giftercity_backup/index.php
(根据错误输出),则根据您的代码,library
位置应位于/var/www/library
和{{1在application
听起来不对。
/var/www/application
应位于index.php
,/var/www/Giftercity_backup/public
等公共文件夹中,您的VirtualHost DocumentRoot应指向该文件夹。
此外,您的/var/www/Giftercity_backup/htdocs
未注册set_include_path
(include_path =':。:/ usr / share / php:/ usr / share / pear')。