警告:无法打开流:第 17 行 C:\xampp\htdocs\WWW\index.php 中的参数无效

Warning: failed to open stream: Invalid argument in C:\xampp\htdocs\WWW\index.php on line 17

我的网站有错误,当我尝试将我的项目从服务器迁移到本地主机时,它在下面的 index.php 和 config.php 中出现错误,

Warning:

require_once(/C:/xampp/htdocs/wwwC:/xampp/htdocs/www/system/startup.php): failed to open stream: Invalid argument in C:\xampp\htdocs\www\index.php on line 17

require_once(DIR_SYSTEM . 'startup.php');

我的config.php,

$root = '/C:/xampp/htdocs/www';
$url = 'http://localhost/www/';
$projectpath = '';
$path = str_replace("index.php","",str_replace($root, "",$_SERVER['SCRIPT_FILENAME']));
$url2= $url.$path;
$rootfolder = $root.$path;
define('HTTP_SERVER', $url2);// HTTPS define('HTTPS_SERVER', $url2);   

// DIR
define('ROOT_APPLICATION', $root .$projectpath);
define('PROJECT_PATH', $projectpath);
define('MAIN_URL', $url.$projectpath);
define('ROOT_URL', $url2);
define('DIR_APPLICATION', $rootfolder.'catalog/');
define('DIR_SYSTEM', $rootfolder.'system/');
define('DIR_LANGUAGE', $rootfolder.'catalog/language/');
define('DIR_TEMPLATE', $rootfolder.'catalog/view/theme/');
define('DIR_CONFIG', $rootfolder.'system/config/');
define('DIR_IMAGE', $root.$projectpath.'image/');
define('DIR_CACHE', $rootfolder.'system/storage/cache/');
define('DIR_DOWNLOAD', $rootfolder.'system/storage/download/');
define('DIR_LOGS', $rootfolder.'system/storage/logs/');
define('DIR_MODIFICATION', $rootfolder.'system/storage/modification/');
define('DIR_store', $rootfolder.'system/storage/');
define('TEMPLATE_PATH', $root.$projectpath);

这行代码就是问题所在:

$path = str_replace("index.php","",str_replace($root, "",$_SERVER['SCRIPT_FILENAME']));

它创建完整(绝对)路径而不是相对路径。

将其添加到:

$rootfolder = $root.$path; // '/C:/xampp/htdocs/ecompusell' . 'C:/xampp/htdocs/ecompusell/system/startup.php'

创建双绝对路径,如您在评论中所见。

并且该路径不存在。

解决方案

一个解决方案是只使用 $path 变量:

$rootfolder = $path; // 'C:/xampp/htdocs/ecompusell/system/startup.php'