此代码以前适合我。但是后来GoDaddy把我搬到了一个Linux盒子里,现在却不是:
$path = $_SERVER['DOCUMENT_ROOT'];
$connection = $path . '\mySite\scripts\connection.php';
include ($connection);
session_start();
我收到此错误:
Warning: include(/var/chroot/home/content/07/11347607/html\mySite\scripts\connection.php) [function.include]: failed to open stream: No such file or directory in /home/content/07/11347607/html/mySite/scripts/administration/login.php on line 5
显然,我可以阅读错误消息,该消息表明该文件不存在。但是,我已经验证确实存在(就像在Linux更改之前那样),但是我的代码可能不能在Linux文件系统上下文中工作?我尝试将\
切换为/
,但这并没有解决任何问题。
任何人都可以帮我解决这个问题吗?谢谢!
编辑:
我将\
更改为/
。这改变了我的错误。我现在得到两个错误:
Warning: session_start() [function.session-start]: open(/home/content/07/11347607/tmp/sess_7ner0g9kbgp5htc4bm7cleblb7, O_RDWR) failed: No such file or directory (2) in /home/content/07/11347607/html/mySite/scripts/administration/login.php on line 8
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/content/07/11347607/html/mySite/scripts/administration/login.php:8) in /home/content/07/11347607/html/mySite/scripts/administration/login.php on line 8
success
Warning: Unknown: open(/home/content/07/11347607/tmp/sess_7ner0g9kbgp5htc4bm7cleblb7, O_RDWR) failed: No such file or directory (2) in Unknown on line 0
以下是我成功连接的connection.php
中的代码:
$link = mysqli_connect($hostname, $username, $password, $db_name);
if (!link) die("no connection");
答案 0 :(得分:1)
尝试使用此功能并使您的路径相对。
$path = __DIR__;
$connection = $path . '\mySite\scripts\connection.php';
include ($connection);
答案 1 :(得分:1)
您可以尝试使用:
$path = dirname(__FILE__);
$connection = $path . '/mySite/scripts/connection.php';
include_once($connection);
正斜杠应该适用于Windows或Linux Box:Reference
你的linux盒子也可能运行不同版本的PHP,所以你可能需要修改你的connection.php
脚本。如果这是数据库连接,请使用PDO! PDO Tutorial
答案 2 :(得分:0)
感谢所有评论和回复的人。在与GoDaddy的三个不同技术支持电话上花了一段时间后,我们终于发现问题已经结束了。无需更改代码。
我很遗憾浪费了每个人的时间。非常感谢你们!