【发布时间】:2018-05-29 20:54:44
【问题描述】:
我刚刚使用 composer update 命令将我的 symfony 版本从 3.4.1 更新到 3.4.2(一切正常)。
当我尝试启动服务器时,我收到以下消息:
警告:需要(index.php):打开流失败:没有这样的文件或 目录在 (...)vendor\symfony\symfony\src\Symfony\Bundle\WebServerBundle\Resources\router.php 在第 45 行
致命错误:require(): 未能打开所需的 'index.php' (include_path='C:\xampp\php\PEAR') 在 (...)vendor\symfony\symfony\src\Symfony\Bundle\WebServerBundle\Resources\router.php 在第 45 行
它引用了这种代码的和平
$script = getenv('APP_FRONT_CONTROLLER') ?: 'index.php';
//var_dump(getenv('APP_FRONT_CONTROLLER'));
//die();
$_SERVER = array_merge($_SERVER, $_ENV);
$_SERVER['SCRIPT_FILENAME'] = $_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.$script;
// Since we are rewriting to app_dev.php, adjust SCRIPT_NAME and PHP_SELF accordingly
$_SERVER['SCRIPT_NAME'] = DIRECTORY_SEPARATOR.$script;
$_SERVER['PHP_SELF'] = DIRECTORY_SEPARATOR.$script;
require $script; //<==== HERE!!!
当我在 $script 变量中进行转储时,我的结果是 false(没有名为 APP_FRONT_CONTROLLER 的环境变量)但是当我在另一个 3.4.1 symfony 版本中运行服务器时,结果是
字符串(11)“app_dev.php”
一切正常。
这是版本问题还是我的环境问题。
如果您需要更多信息,请询问。
提前致谢。
【问题讨论】:
-
这是弹性应用还是标准框架应用?它是一个新的 3.4.1 应用程序还是您之前从早期版本升级?你正在使用 bin/console server:start 还是 run?
标签: symfony symfony-3.4