返回空白页的特定项目PHP文件


Specific project PHP files returning blank pages

所以,我把这个项目上传到webwire。在/alpha中,但是它返回的是空白页。

PHP Fatal error:  require(): Failed opening required './classes/Cookie.php' (include_path='.:/usr/share/php:/usr/share/pear in /var/www/html/alpha/core/init.php on line 22

和第25行各一个

第21-23行code = spl_autoload_register(function($class) { require_once ('./classes/' . $class . '.php'); //line 22 });

第25行= require_once ('./functions/sanitize.php');

这个错误的棘手的事情是,这只适用于这个alpha文件夹。昨天也发生了,但是不知怎么的被修复了。现在,当我删除文件并上传时,错误又出现了。昨天,至少alpha/admin是工作的,但今天没有任何工作在这个alpha文件夹。

还有一件事,我已经把同样的文件上传到另一台服务器上,它工作得很完美。请看这里——众包。/rationshop(共享主机)

当前服务器是VPS。

我不是这方面的专家,我仍然尝试了解决方案,因为我搜索,但没有一个对我有效,直到现在。

包含的页面是相对于加载的页面包含的,而不是执行包含的脚本。

那么,如果你在文件夹中有一个脚本:/var/www/html/alpha/admin/

包括脚本:/var/www/html/alpha/core/init.php

init.php包含文件./functions/sanitize.php

然后init.php查找文件夹/var/www/html/alpha/admin/,这是加载初始脚本的地方。不考虑相对于init.php脚本。它正在查找一个不存在的文件:/var/www/html/alpha/admin/functions/sanitize.php。我假设它存在于/var/www/html/alpha/core/functions/sanitize.php下。

简单的解决方法是使用__DIR__,这是一个内置的php魔术常量,具有当前脚本(当前包含的文件)的值。/var/www/html/alpha/core/init.php内部,__DIR__ == /var/www/html/alpha/core/。所以你可以包含/require __DIR__."/functions/sanitize.php