Laravel 中缺少 public 文件夹
Missing public folder in Laravel
我收到了客户的一个项目。我尝试使用 php artisan serve
命令将它安装在我的本地机器上,但我发现了以下错误
在 Google 中搜索后,我找到了 this 问题。然后发现我的项目目录下没有public文件夹
删除此 public 文件夹有什么具体原因吗?还是不小心遗落了?
我改了
chdir($this->laravel->publicPath());
在 vendor/laravel/framework/src/Illuminate/Foundation/Console/ServeCommand.php 至 :
chdir('/');
根据 this 问题。之后,当我 运行 我的项目使用 php artisan serve
时,我得到一个空白页面。
解决方法是什么?
他们可能尝试将应用程序从根目录设置到 运行,而不是 public 文件夹。通常在共享主机上将 Laravel 应用程序设置为 运行(我可能会错误地添加)时发生。
创建一个新的 public 目录并将您的 js、css 和 index.php 文件移回其中。还要检查从根目录引用 index.php 的任何显式路径并更新它们,以便它们指向 public 目录。您还必须在 public 目录中创建一个新的 htaccess 文件(或从根目录移动现有文件)。
只需与干净的 laravel 安装的目录结构进行比较,您就可以看到缺少的内容。
大多数新开发者由于缺乏经验,都使用这种方法隐藏真实服务器中的public文件夹。我建议您将主文件夹从 '/'
编辑回 "public"
首先,查看您的 index.php
文件并替换
$app = require_once 'bootstrap/app.php';
到$app = require_once __DIR__.'/../bootstrap/app.php';
2) 改变require 'vendor/autoload.php';
到
require __DIR__.'/../vendor/autoload.php';
3) 创建一个新的 public 文件夹并将您的 资产文件 和 index.php 放在那里。
您可以在完成这些步骤后尝试 php artisan config:clear
。
不要忘记主要目的是取回 public 文件夹。
我收到了客户的一个项目。我尝试使用 php artisan serve
命令将它安装在我的本地机器上,但我发现了以下错误
在 Google 中搜索后,我找到了 this 问题。然后发现我的项目目录下没有public文件夹
删除此 public 文件夹有什么具体原因吗?还是不小心遗落了?
我改了
chdir($this->laravel->publicPath());
在 vendor/laravel/framework/src/Illuminate/Foundation/Console/ServeCommand.php 至 :
chdir('/');
根据 this 问题。之后,当我 运行 我的项目使用 php artisan serve
时,我得到一个空白页面。
解决方法是什么?
他们可能尝试将应用程序从根目录设置到 运行,而不是 public 文件夹。通常在共享主机上将 Laravel 应用程序设置为 运行(我可能会错误地添加)时发生。
创建一个新的 public 目录并将您的 js、css 和 index.php 文件移回其中。还要检查从根目录引用 index.php 的任何显式路径并更新它们,以便它们指向 public 目录。您还必须在 public 目录中创建一个新的 htaccess 文件(或从根目录移动现有文件)。
只需与干净的 laravel 安装的目录结构进行比较,您就可以看到缺少的内容。
大多数新开发者由于缺乏经验,都使用这种方法隐藏真实服务器中的public文件夹。我建议您将主文件夹从 '/'
编辑回 "public"首先,查看您的 index.php
文件并替换
$app = require_once 'bootstrap/app.php';
到$app = require_once __DIR__.'/../bootstrap/app.php';
2) 改变require 'vendor/autoload.php';
到
require __DIR__.'/../vendor/autoload.php';
3) 创建一个新的 public 文件夹并将您的 资产文件 和 index.php 放在那里。
您可以在完成这些步骤后尝试 php artisan config:clear
。
不要忘记主要目的是取回 public 文件夹。