我通常使用此行从当前文件夹中导出文件,它在我的本地主机服务器上正常工作
require("../DataBase.class.php");
但是当我在我的网站上传脚本时,我得到了这个警告
警告: 包括(../ DataBase.class.php) [function.include]:无法打开 stream:没有这样的文件或目录
答案 0 :(得分:3)
安全模式不喜欢“../”。所以你应该总是使用像
这样的东西require_once realpath(dirname(__FILE__) . '/..') . '/file.php';
答案 1 :(得分:2)
可能发生的事情是,php.ini中的include_path设置在服务器上与在本地安装的PHP / Apache上不同。除此之外,请记住../不指向文件所在的当前目录,它指向您所在的当前目录的父目录。我建议找到完整路径您的文档根目录,然后包括您的文件:
<?php
$full_path = "/var/www/htdocs"; // this should be your website's full path
require( $full_path . "/DataBase.class.php" );
?>
答案 2 :(得分:0)
您正在父目录中查找该文件。如果您想在当前目录中使用:
require 'Database.class.php';
也许在您的本地Web服务器上,由于远程服务器上不存在的某些原因,您的父目录中有一个副本。