Laravel 项目在 Ubuntu 16.04 上未运行 php artisan serve 时无法运行

Posted

技术标签:

【中文标题】Laravel 项目在 Ubuntu 16.04 上未运行 php artisan serve 时无法运行【英文标题】:Laravel project doesn't run while not running php artisan serve on Ubuntu 16.04 【发布时间】:2018-01-10 14:13:29 【问题描述】:

我有一个奇怪的问题。在 localhost:8000 的终端中运行 php artisan serve 命令后,我在 v5.1 中的 laravel 项目成功运行。但是当我从浏览器使用 localhost/myproject/public 访问项目并显示空白页时,该项目没有运行。我也尝试创建虚拟主机并从虚拟主机访问项目,但没有任何成功。

谁能帮我解决这个问题?

【问题讨论】:

php artisan serv 不工作? 你需要去 localhost:8000 而不是 localhost/myproject/public 你有本地运行的 Apache 或 nginix 实例吗?如果您正在寻找更完整的虚拟机进行开发,请查看 Laravel Homestead。这是一个运行 ubuntu 和 Nginix 的预配置 Vagrant 盒子。您不能只在浏览器中打开公用文件夹,这是行不通的。 当 artisan server 启动时,他们会向你显示 url,尽管你可以访问你的项目,默认它来自 localhost:8000。检查一下,如果您有任何问题,请告知。 @AddWebSolutionPvtLtd 我的项目运行良好,运行 php artisan serve 【参考方案1】:

-将您的项目移动到“htdocs”或“www”根文件夹。 - 打开公共文件夹并打开 index.php 文件并编辑这些行:

require __DIR__.'/../bootstrap/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';

对这些:

require __DIR__.'/bootstrap/autoload.php';
$app = require_once __DIR__.'/bootstrap/app.php';

所以索引能够找到'autoload.php'

并保存这些编辑。 - 现在将所有文件从公用文件夹移动到“htdocs”文件夹。 - 在浏览器中运行你的项目'http://localhost'或'http://127.0.0.1'

【讨论】:

【参考方案2】:

我在 Ubuntu 16.04 上遇到了同样的问题。通过这样做解决了它:

    在默认 conf 文件或虚拟主机 conf 文件中将 AllowOverride 设置为 All,如下所示 允许覆盖所有 命令允许,拒绝 允许所有人

    sudo service apache2 重启

您可能还需要执行 sudo a2enmod rewrite 以启用模块重写。

希望这会对你有所帮助。

【讨论】:

以上是关于Laravel 项目在 Ubuntu 16.04 上未运行 php artisan serve 时无法运行的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu 16.04 laravel虚拟主机即使按照描述执行所有步骤也无法正常工作

Laravel Ubuntu 16.04 返回状态码 500

Ubuntu16.04上使用Nginx部署Laravel应用程序

在 Laravel - 使用 ubuntu 16.04 在 xampp 上找不到驱动程序

Laravel 5.3 在 ubuntu16.04 nginx 中使用命令 composer install --no-dev 上传

在 7.0 ubuntu 16.04 旁边安装 php 5.6 后,本地虚拟主机停止工作