mac osx 搭建php开发环境

mac osx上搭建php开发环境:php

一、因为系统自带了apache2.4.10和php5.5.20,没有打算再mamp。html

启动apache:java

sudo apachectl startmysql

重启apache:web

sudo apachectl restartsql

查看apache版本:数据库

httpd -vapache


二、配置php:windows

查看php版本:后端

php -v

配置apache启用php:

sudo vi /etc/apache2/httpd.conf

打开php5配置:

LoadModule php5_module libexec/apache2/libphp5.so

保存后重启apache生效。


三、以前已经安装了mysql 5和数据库管理软件navicat premium,就再也不安装phpadmin了。


四、下载安装netbeans php 8.0.2。

https://netbeans.org/downloads/index.html


五、使用netbeans php新建php项目,调试代码:

调试代码须要配置 php 启用xdebug,笔者按照传统的方式访问xdebug的官网,发现只有windows binary的下载,差点走了弯路在mac上自行编译。研究了一段时间后,终于解决问题。

a) osx 不只自带了apache、php、libphp for apache,还自带了 xdebug ,启用它的话,须要先 sudo cp /etc/php.ini.default /etc/php.ini 而后再执行如下命令:

sudo sh -c 'echo zend_extension=$(find /usr/lib/php/extensions -name "xdebug.so") >> $(php -qr "echo php_ini_loaded_file();") && apachectl restart'

注意:若是不先建立/etc/php.ini,会出现“ambiguos redirect”的错误。

b) 配置 php.ini 使其支持 xdebug:

sudo vi /etc/php.ini

shit + G转到文件最后,添加(zend_extension=是a)步骤自动生成的):

zend_extension=/usr/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so

xdebug.remote_enable=on

xdebug.remote_log="/var/log/xdebug.log"

xdebug.remote_host=localhost

xdebug.remote_handler=dbgp

xdebug.remote_port=9000

xdebug.idekey=netbeans-xdebug


六、配置apache,使其引用netbeans建立的php项目路径。由于netbeans php ide默认建立项目到当前用户xxx主目录下的NetBeansProjects目录下,因此要想在apache下运行ide建立的web项目TodoList,还须要设置Alias。TodoList项目是NetBeans IDE自带的一个示例工程,特别要注意的是Alias 指向的是 TodoList/web 而不是 TodoList。

sudo vi /etc/apache2/httpd.conf

增长如下行:

Alias /TodoList /Users/xxx/NetBeansProjects/TodoList/web

<Directory "/Users/YXCD/NetBeansProjects/">

    AllowOverrideAll

    Options IndexesMultiViews FollowSymLinks

    Requireall granted

</Directory>

配置TodoList/config/config.ini以后,可能还会出现错误:

DateTime::__construct(): It is not safe to rely on the system’s timezone settings.

解决办法:编辑 /etc/php.ini,打开date.timezone并设置为Asia/Shanghai

[Date]

date.timezone = Asia/Shanghai

重启apache以后问题解决。


七、万事具有,只欠东风。最后使用netbeans调试php项目是很是容易的。在项目树上右键单击,上下文菜单中选择“调试”便可。前面的步骤若是设置不正确,就会致使调试时netbeans一直在等待链接。

有的文章说等待链接是9000端口被占用,须要修改php.ini中的

xdebug.remote_port=9000

为其余值如9001,而后设置netbeans的调试监听端口也为9001。菜单:NetBeans IDE > Preferences

再单击php面板,切换到“调试”窗口,可修改“调试器端口”。可是,笔者遇到调试时等待链接状况并不是由于端口,而是httpd.conf的Alias路径问题,以及php.ini的配置。


ps:

一、windows版本的php环境,笔者也搭建过无数次了,每次也是如上述通常手动配置的。但今天帮助同事搭建环境,我经过httpd.apache.org,一步一步指引到下载xampp,发现更为方便,因此就再也不手工折腾了。xampp安装时,绝大多数搭配的软件都是不要的,只勾选apache、php等便可。

二、windows netbeans php ide调试也须要xdebug,虽然你能够区xdebug官网下载一个配套xampp版本(如32位、VC十一、php 5.6等)的binary .dll,但我仍是建议只须要编辑C:\xampp\php\php.ini,把关于xdebug的条目打开便可。注意,xdebug.remote_enable 项缺省不是on,而是0,0表示off,不只要删除注释符分号,还得改写这一项。或者直接参考我前面五、b)配置。

三、强烈推荐 php framework codeigniter ,8年前我接触了它,还在犹豫到底选用 ci 仍是它的社区衍生版 kohana,我就转向了 java 阵营。现在再访问 codeigniter,可喜的看到它终于出到 3.0 了,使用协议改成了MIT,并将代码移交给了一所美国大学。而 kohana 的最后更新彷佛还停留在多年前。简单看了一些介绍和视频,本身动手写了点东西,发现相比 java 世界,php + ci 是那么的畅快,已经推荐给了正打算学后端的同事,借此也推荐给你们。

中文ci站点:http://codeigniter.org.cn

3.0的中文手册还未完成,请你们给予社区一些鼓励。