怎么在PHPStorm中调试php artisan server?
本教程将介绍如何在PHPStorm中调试php artisan server?的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。
问题描述
我正在使用PHPStorm开发我的PHP网页。使用我的Apache Server、XDebug和一个简单的web PHP项目都可以很好地工作。没问题。
但是,当我尝试使用php artisan serve
调试Laravel 5.1Web项目时,我无法调试断点。这就像php artisan serve
使用另一台服务器.
在我的PHPStorm上,我总是看到:
正在等待使用ide键"(RanomNumberHere)"的传入连接
我已经在PHPStorm中配置了所有内容(启用远程调试、正确的端口等),并且使用"普通"PHP项目都可以正常工作。
有人能告诉我是否需要更改吗?
谢谢!
推荐答案
使用php artisan serve
调试不起作用,除非您在INI文件中启用了调试。
@Bogdan指出了原因。artisan serve
将调用PHP内置Web Server,但不传递php命令行选项(PHPStorm中命名为解释器选项)。
即如果从命令行执行:
$ php -dxdebug.remote_enable=1 -dxdebug.remote_mode=req -dxdebug.remote_port=9000 -dxdebug.remote_host=127.0.0.1 artisan serve
则-d
给出的这些选项不会传递给被称为PHP内置Web服务器。您可以看到内置服务器的调用here。
PHPStorm中的解决方法是创建直接调用PHP内置Web服务器的运行配置。使用说明:
打开运行->;编辑配置.
新建"PHP内置Web服务器"
设置值:
主持人:localhost
端口:8000
文档根:选择Laravel的公共目录/目录
选中Use route script
并选择Laravel Projects根目录中的server.php
。
解释器选项:-dxdebug.remote_enable=1 -dxdebug.remote_mode=req -dxdebug.remote_port=9000 -dxdebug.remote_host=127.0.0.1
单击"确定"并运行。
现在,PHPStorm将执行与使用其他解释器选项的php artisan serve
相同的命令。实际上,php artisan serve
的唯一目的是将server.php附加到PHP内置Web服务器。server.php仅模拟Apache的mod_rewrite
功能。
运行PhpStorm配置,则需要手动执行此操作。
好了关于怎么在PHPStorm中调试php artisan server?的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。