mac下搭建php服务器xampp+phpstorm+xdebug

这两天在xampp上花了将近两天的时间才搭建成功,这是我效率最低的一次了。主要是遇到好多的坑,第一大坑就是百度,还有就是一些博客并没有那么专业,很多都是过时的错误。
首先来了解下xampp,xampp 是一个把apache网页服务器与PHP、Perl及MySQL集合在一起的安装包,允许用户可以在自己的电脑上轻易的建立网页服务器,使用xampp你可以轻松的在本机调试你的php程序,CMS已经wordpress博客程序。最关键的一点是支持多平台开发,一般程序员看到基本满心欢喜了。

XAMPP安装

很多人图一时之快,使用了百度搜索第一页百度推荐的包(主要是下载快捷)。我们知道MAC上本身就自带了php和apache,百度推荐的xampp包是最新的,可能和系统的版本相互不兼容的。当时我下载下来之后研究了一天都没有攻破他,尤其是在xdebug配置的时候遇到了各种坑,最坑爹的百度下载的dmg文件安装好之后在xamppfiles/lib中只有少少的几个文件,你会发现和很多博主截图展示的都不一样(百度巨坑,建议还是用google吧,如果没有翻墙工具,这边推荐lantern和chrome插件SwitchyOmega来搭建vpn,免费哦)。
XAMPP下载地址
接下来的步骤会用mac的都会的,启动也不说了,简单的很,几个按钮点点就好了,启动成功之后在本地浏览器中输入localhost,搞定…

配置自己项目路径

当我们打开localhost的时候回看到如下页面

apache在httpd.cof配置文件中默认设置了启动的路劲,在你的安装路劲/Applications/XAMPP/etc中php.ini我们也会使用到

http.conf可以找到apache的启动目录和跟文件目录,只要将这两项改为你自己制定的目录路劲就好了(注意:定制的目录路径不要放到用户目录的Document下否则会出现404错误,因为apache是没有权限访问当前用户下除了public的文件的,除非修改他们的文件权限,只要chmod 775一下就ok了,个人建议还是自己在用户目录下面新建一个文件夹来存放工程文件比较好,当然你可以设置用户权限允许文件apache用户访问)

重新启动apache服务器,这时候打开就可以直接看到你的目录路径了

配置Xdebug

网上看到一些配置教程,我试了一遍都是好像有些都是有问题,在遇到这种情况下,还是看XAMPP的官方教程最给力了,在原来没有配置自己的启动路径的时候,打开默认的dashboard(可以把安装目录下htdoc中的文件拷贝到自己的配置的目录下,重新刷新localhost就有了),右上角有个HOW-TO Guides 中有安装教程。一定要不文档中三步错误完成,否则xdebug没有加载zend_extension 也是没有用的


配置好之后,点击PHPInfo可以看到XDebug就配置成功了,在没有配置之前phpinfo中是没有xdebug的

phpstorm配置

为了在开放过程中方便调试,需要配置phpstorm。
1、打开 Applications/XAMPP/etc/php.ini 配置文件,在最末尾处加入以下内容。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[xdebug]
xdebug.profiler_append = 0
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "/tmp"
xdebug.profiler_output_name = "cachegrind.out.%t-%s"
zend_extension=/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so
xdebug.remote_autostart=on
xdebug.remote_enable=on
xdebug.remote_enable=1
xdebug.remote_mode="req"
xdebug.remote_log="/var/log/xdebug.log"
xdebug.remote_host=localhost/127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
xdebug.idekey="PhpStorm"

2、PHP 是解释型动态语言,所以必须设置 PHP Interpreters 解释器[位于 ../XAMPP/bin 目录中],特别注意:由于受限于 PhpStorm 的内置的 PHP 版本,XAMPP 中的 PHP 版本不可过高,否则会出现无法识别 PHP Version 和 Debugger 的情况。配置完之后记得按照IDE中的提示,将extension改为zend_extension就完成了

3、 添加 Web Application Debug 服务器。打开 Preferences>Language & Frameworks>PHP>Servers

4、查看 Xdebug 配置信息,打开打开 Preferences>Language & Frameworks>PHP>Debug查看Xdebug中的端口号是否与php.ini中配置的xdebug.remote_port=9000端口号是否一致,或设置其他较大端口如:10000,只要二者相同即可。

5、配置DBGp Proxy ,打开Preferences>Language & Frameworks>PHP>Debug>DBGp Proxy,IDE Key一定要和php.ini保持一致

6、chrome下安装JetBrains IDE Support 插件

调试

配置完成后需要检验配置是否成功。首先激活 PHPStorm IDE 的 “Start Listen for PHP Debug Connections” 按钮(右上角 Debug 区类似电话的图标,带红色禁止小圆圈标志表示未激活,变绿表示正在监听中。在程序中打个断点然后按爬虫按钮就可以开始调试了,F7便可逐行进行断点调试,就不用什么echo或则print来调试了。完美

总结

珍爱生命,远离百度