我似乎不明白为什么我们需要使用 php artisan serve
运行 Laravel 应用程序,而不是仅使用 Apache 或 nginx 运行它。我知道在开发过程中,我们使用 artisan 启动站点,在部署到服务器后,您使用网络服务器加载站点。
首先在 artisan 中运行应用程序有什么用?
原文由 captainblack 发布,翻译遵循 CC BY-SA 4.0 许可协议
我似乎不明白为什么我们需要使用 php artisan serve
运行 Laravel 应用程序,而不是仅使用 Apache 或 nginx 运行它。我知道在开发过程中,我们使用 artisan 启动站点,在部署到服务器后,您使用网络服务器加载站点。
首先在 artisan 中运行应用程序有什么用?
原文由 captainblack 发布,翻译遵循 CC BY-SA 4.0 许可协议
在开发过程中使用 php artisan serve
而不是典型的网络服务器的一个优势是您可以使用 Psysh 作为调试器 (Laravel Tinker) 来设置断点。
例如,在我想中断的代码行中,我键入:
eval(\Psy\sh());
然后我点击将运行该部分代码的页面,当它到达该行时,它将进入 Psy Shell repl(在我开始的命令行窗口中 php artisan serve
)。然后我可以在那个执行点检查变量等。这对于调试非常有用。据我所知,您不能在运行 Apache/Nginx 时执行此操作。它必须与 artisan serve (或运行自动化测试)一起使用。
更多信息在这里:
https://tighten.co/blog/supercharge-your-laravel-tinker-workflow
原文由 user938883 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答3.1k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
1 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读
1 回答872 阅读✓ 已解决
2 回答1.2k 阅读
serve
命令只是 PHP 内置 Web 服务器 的快捷方式,PHP 开箱即用,所以使用它的目的是尽可能快地开始测试您的应用程序,您只需要安装 PHP、Composer 并且您的应用程序已启动(当然,如果您不需要其他任何东西)。但是如果你已经安装了Nginx,那就完全没有意义了,直接用就行了。在生产环境中使用 Builtin Webserver 是不明智的。