什么是运行Laravel的命令'php artisan serve'?

时间:2016-11-30 15:44:26

标签: php apache laravel artisan

我似乎不明白为什么我们需要运行带有php artisan serve的Laravel应用程序,而不是使用 Apache nginx 运行它。我知道在开发过程中,我们使用artisan来启动站点,在部署到服务器之后,您使用Web服务器来加载站点。

首先在工匠中使用应用程序是什么意思?

4 个答案:

答案 0 :(得分:23)

serve命令只是PHP Built-in Webserver的快捷方式,PHP开箱即用,所以使用它的目的是尽可能快地开始测试你的应用程序,你只需要我需要安装PHP,Composer和你的应用程序(如果你不需要其他任何东西)。但是如果你已经安装了Nginx,那就没用了,只需使用它。

在生产中使用Builtin Webserver是不明智的。

答案 1 :(得分:6)

在开发过程中使用php artisan serve优于典型Web服务器的一个优点是可以使用Psysh作为调试器(Laravel Tinker)来设置断点。

例如,在我输入的代码行中我输入:

eval(\Psy\sh());

然后我点击将运行该部分代码的页面,当它到达该行时,它将进入Psy Shell repl(在命令行窗口中我开始php artisan serve)。然后我可以在执行点检查变量等。它对调试非常有用。据我所知,你不能运行Apache / Nginx。它必须与工匠服务(或运行自动化测试)。

更多信息:

https://tighten.co/blog/supercharge-your-laravel-tinker-workflow

http://psysh.org/

答案 2 :(得分:0)

目的:使用 Php artisan服务(PHP内置服务器)的目的只是为了测试和轻松启动项目,不应在实际的网站部署中使用。

资产不起作用:始终将索引文件公开,这是Laravel框架的优点和安全性,并且您的资产将始终有效。如果您无聊使用自定义URL(例如C:/wamp/www/pym/server.php),请在本地使用虚拟主机,但不要但不要将索引放在“公共”文件夹之外。 如果您确实要在根目录中使用索引,则应自定义所有 asset() url()辅助函数,并应将确切的url示例资产(' / login')应该更改为asset('localhost / yourprojectroot / login')。

答案 3 :(得分:0)

好吧,我一直在寻找相同的答案,但是找不到任何令人满意的答案,如果您也像我一样不满意,请尝试运行在运行时返回的链接

php artisan serve

返回

Laravel development server started: <http://127.0.0.1:8000>

复制该/ http://127.0.0.1:8000并将其运行到浏览器中,猜测它会返回什么);您首次安装laravel时首先得到的页面,或者我猜它会返回路由文件夹中的页面设置为/ home目录或文件(默认主页)。

简而言之:

php artisan serve

开始发球,例如,当您要开车时,在开车前先发动引擎,这样您就可以同时发动引擎和发动,这不是必须的,而是取决于。所以对我来说php artisan服务CLI。