mac php nginx mysql 环境搭建及eclipse/phpstorm xdebug
由于以前使用的都是windows对于新买的Mac系统异常不熟悉,所以安装环境碰到了许多小问题,这里做些总结。希望可以对以后安装的朋友有点用处。
首先是搭建PHP 环境,这里我使用了下面这个博客,讲的比较详细
全新安装Mac OSX 开发者环境 同时使用homebrew搭建 PHP,Nginx ,MySQL,Redis,Memcache ... ... (LNMP开发环境)
http://segmentfault.com/a/1190000000606752
但是还是碰到一些小问题;
- 因为我想安装PHP56 所以讲其中55的地方都需要改掉。(这点应该都很容易理解 ^_^)
- 然后安装了zsh ,那么你的shell 就已经变成zsh了。这时请注意
博文中替换的环境变量是这样的
echo 'export PATH="$(brew --prefix php55)/bin:$PATH"' >> ~/.bash_profile #for php
echo 'export PATH="$(brew --prefix php55)/sbin:$PATH"' >> ~/.bash_profile #for php-fpm
echo 'export PATH="/usr/local/bin:/usr/local/sbib:$PATH"' >> ~/.bash_profile #for other brew install soft
source ~/.bash_profile
但是由于已经安装了zsh那么,如果配置到这个里面是bash的配置,完全不起作用。需要修改的是 ~/.zshrc 文件.
vim ~/.zshrc
.zshrc 文件最后添加:
. ~/.bash_profile
同理 alisa 命令不起作用的问题也可以这样解决。
我直接将该命令也放入到了 ~/.bash_profile中.(偷懒中-_-#)
下面开始配置安装phpstorm/eclipse等ide工具碰到xdebug配置的问题导致debug不起作用。
如果你使用的是前面的安装,那么一定已经安装了xdebug .如果没有 请先安装xdebug.
- 使用brew 安装php56的同时安装 xdebug ,如果没有 可以使用以下命令。(注意版本和对应的xdebug)
brew install php56-xdebug
这里可能碰到 Error: Formulae found in multiple taps: 的问题,
解决
brew untap josegonzalez/homebrew-php
使用该命令先清除一个tap,如果需要在安装一下这个tap就可以了
2. 配置php.ini 文件, 网上的很多教程都是直接将配置写到php.ini文件中,如果使用上面的方法安装配置,直接写在配置里会有冲突.
解决方法: 在 /usr/local/etc/php/5.6/conf.d/ext-xdebug.ini 文件中添加需要的xdebug配置
我的配置文件
[xdebug]
zend_extension="/usr/local/Cellar/php56-xdebug/2.3.3/xdebug.so"
xdebug.remote_enable =1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_mode = "req"
xdebug.remote_port = 19000
;xdebug.idekey="PHPSTORM"
;开启自动跟踪
xdebug.auto_trace = On
;开启异常跟踪
xdebug.show_exception_trace = On
;开启远程调试自动启动
xdebug.remote_autostart = On
;收集变量
xdebug.collect_vars = On
;收集返回值
xdebug.collect_return = On
;收集参数
xdebug.collect_params = On
这里有一个重点:
xdebug.remote_port = 19000
网上很多教程都是配端口为9000 ,但是在我配置的过程中会出现下面使用IDE不能进入调试的问题。
这里就配置完成了php部分 ,可以在 phpinfo(); 页面查看配置是否成功。
这里在使用前面配置phpmyadmin的时候可能会有错误,错误没有截图,不过如果出现,可以试试将xdebug配置中
;开启自动跟踪
;xdebug.auto_trace = On
注销掉,这是可以解决。
下面开始配置eclipse / phpstorm 的xdebug
配置phpstorm 可以参照:
http://log.codes/post/phpstorm-debug-using-xdebug/
需要将博客中配置的9000端口改为19000 端口
Servers 依旧 配置为 localhost 端口 80
使用phpstorm 需要给浏览器中添加插件, 每个浏览器可以找一下 网上有很多。
配置eclipse 可以参照:
http://blog.csdn.net/eric6/article/details/5932029
但是如果你用的是mars 版 会有点不一样,这里需要配置两个地方:
1. 配置 PHP Executables 中添加本地PHP 的位置
上面配置安装的地址是: /usr/localCellar/php56/5.6.14/bin/php
并且在Debugger中配置 xdebug 端口:19000
2 修改Servers, edit -> Default PHP Web Server 的Debugger 中选择 xdebug 端口 190000
这样就配置完成了,eclipse不需要其它浏览器插件
这里我的环境基本就搭建好了,在搭建碰到需要小问题,希望对大家有所帮助!^_^
转载请注明出处,谢谢。
- 用openssl库RSA加密解密
- Kobject浅析
- ASP.NET Core应用的错误处理[2]:DeveloperExceptionPageMiddleware中间件如何呈现“开发者异常页面”
- RSA简介(二)——模幂算法
- 为虚拟机vCPU绑定物理CPU
- RSA简介(三)——寻找质数
- RSA简介(四)——求逆算法
- 平方根的C语言实现(三) ——最终程序实现
- ASP.NET Core应用的错误处理[3]:ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”
- 【视频】Es6新特性-Symbol
- shell编程/字库裁剪(3)——验证
- 特征选择(Feature Selection)引言
- shell编程/字库裁剪(2)——编程过程
- 使用mock来编译和管理RPM软件包
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 浅谈关于Android WebView上传文件的解决方案
- Android对图片Drawable实现变色示例代码
- 排序|优先队列不知道,先看看堆排序吧
- Android关于FTP文件上传和下载功能详解
- Android中封装RecyclerView实现添加头部和底部示例代码
- Python 十六进制hex-bytes-str之间的转换和Bcc码的生成
- android中实现手机号码的校验的示例代码
- Android ListView实现下拉加载功能
- Android 截图功能源码的分析
- Docker下搭建禅道管理系统
- Android如何通过Retrofit提交Json格式数据
- python-jsonpath 解析神器
- Android中自定义ImageView添加文字设置按下效果详解
- Android中使用Kotlin实现一个简单的登录界面
- Android编程实现webview将网页打包成apk的方法