使用以下方法创建新的Laraver项目后
laravel new [project_name]
起初它跑了,但是在第二次运行之后我得到一个错误说:
警告:未知:无法打开流:第0行的“未知”中没有此类文件或目录
致命错误:未知:在第0行的未知中打开所需的'D:[path] \ server.php'(include_path ='C:\ xampp \ php \ PEAR')失败
答案 0 :(得分:6)
问题是初始目录包含server.php文件,第二次丢失了。
对我来说,这是与Avast的奇怪交互,因为它认为该文件是恶意的。检查Avast的病毒库以恢复该文件以避免进一步的问题。
也许这会为某人节省时间。
答案 1 :(得分:0)
我也在 Windows 10 上,并且出现了相同的问题和错误消息:
PHP警告:未知:无法打开流:没有此类文件或 第0行上的“未知”中的目录
PHP致命错误:未知: 无法打开所需的'D:\ yourProject \ server.php' (include_path ='C:\ xampp \ php \ PEAR')在第0行上未知
如何解决此问题。 在 Avast 防病毒软件上:
将路径例外添加到您的项目路径
检查根目录项目中是否存在server.php文件,如果不是,则表示防病毒已将其删除,请转至Avast中继并将其还原。
停止服务器,然后再次运行。
答案 2 :(得分:0)
当项目的根目录中需要server.php
文件时,会发生此错误,如果需要,您可以创建该文件,基本上这是必须包含的代码。
server.php
<?php
$uri = urldecode(
parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH)
);
if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
return false;
}
require_once __DIR__.'/public/index.php';
答案 3 :(得分:0)
似乎您已从Laravel项目的根目录中删除了server.php
文件。您可以重新创建新的server.php并按照给定的方式放置PHP脚本,
<?php
$uri = urldecode(parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));
if ($uri !== '/' && file_exists(__DIR__.'/public'.$uri)) {
return false;
}
require_once __DIR__.'/public/index.php';
或者您可以转到官方的laravel github repo来获取原始的server.php文件。
答案 4 :(得分:0)
那是因为您可能正在使用Avast防病毒软件,该解决方案只是打开防病毒检查病毒和威胁,将server.php设为例外,然后再次尝试打开localhost,它现在应该可以工作