Mac下搭建PHP集成开发环境(推荐)

MAC自带PHP和Apache

Mac自带Apache坑很多,并且会受Mac系统升级影响。而单独安装Apache和PHP较为繁琐,升级也不方便。因此推荐使用XAMPP搭建PHP开发环境,使用XAMPP搭建PHP环境后,请关闭自带Apache服务;否则XAMP中的Apache和自带的Apache端口会发生冲突。


升级PHP开发环境时,仅需备份httpd.conf和http-vhosts.conf,并重新安装xdebug即可。


注:建议将所有自定义的Web目录设置到 /Applications/XAMPP/htdocs 文件夹下,否则Apache可能会报403。在Mac上Apache 403的问题很难修复,且受系统升级影响;通过各种方式安装Apache或使用自带的Apache都会出来403问题;因此,在Mac下不建议将Apache的Web根目录设置到其它非默认目录中。


注:在本机访问Apache本地服务时,要避免本机有全局代理;如果本地服务被代理拦截,就会导致本地服务无法访问。


安装环境

下载安装:https://www.apachefriends.org/index.html

 ## 常用命令:
 sudo apachectl start 
 sudo apachectl stop  
 sudo apachectl restart  

 ## 查看Apache版本
 httpd -v 

注:Mac的XAMPP分为XAMPP for Mac和XAMPP-VM版本:

XAMPP for Mac 的XAMPP是OS X的本地安装程序。它将Apache,PHP和其他XAMPP组件直接安装在OS X系统的/ Applications / XAMPP文件夹中。

XAMPP-VM是OS X的虚拟机,它包括Apache,PHP和其他XAMPP组件,并在OS X系统上的基于Linux的虚拟机中运行它们。

我们需要下载的是XAMPP for Mac



下载项目

cd /Applications/XAMPP/htdocs
sudo git clone https://git.coding.net/jw_/sidoc.git

注:右键,将项目的权限设置为所有人可读/写;并应用于所有子文件/文件夹;否则phpstorm可无法打开项目。



多站点的配置

配置hosts(本地DNS服务器)

以管理员身体打开文件 /private/etc/hosts,并添加如下两句:

127.0.0.1       www.test.com
127.0.0.1       test.com

注意:若本地有代理服务,且已开启全局模式时,hosts中的配置可能会失效,因为 test.com 会被代理服务转向其它IP,而非在hosts中配置的127.0.0.1


设置Apache以当前用户身份来运行,避免可能的403错误

打开 httpd.conf 文件,修改配置用户:

路径: /Applications/XAMPP/xamppfiles/etc/httpd.conf 


引入httpd-vhosts.conf配置文件 


解决中文目录乱码问题

在httpd.conf文件最底部添加如下代码:

IndexOptions Charset=UTF-8


配置http-vhosts.conf文件

打开 /Applications/XAMPP/xamppfiles/etc/extra/httpd-vhosts.conf  文件,添加如下代码:

<VirtualHost *:80>
	ServerAdmin 512113110@qq.com
	DocumentRoot "/Users/edz/Desktop/jw_pro"
	<Directory "/Users/edz/Desktop/jw_pro">
	    # Indexes表示允许显示目录结构
		Options Indexes FollowSymLinks 
		AllowOverride All
		Require all granted
	</Directory>
	ServerName pro.com
	ServerAlias pro.com
</VirtualHost>



授权Apache访问工作空间目录

## 如下命令会给所有访问者读、写权限,仅用于本机测试环境,否则很危险
sudo chmod -R 777 /Applications/XAMPP/xamppfiles/htdocs/sidoc



安装PHP Redis扩展

https://www.sidoc.cn/doc/456.html


安装PhpStorm

下载安装:https://www.sidoc.cn/article/662.html

配置主题:https://pan.baidu.com/s/1cJIgge

切换为Eclipse快捷键方式 :



环境确认

在首页html中添加如下代码查看PHP和Apache版本:

<?php echo phpinfo() ?>

版本要求:Apache 2.4.*

PHP 7.*



Mac/Linux断点调试

1> 下载 xdebug 源码:

复制 phpinfo() 输出的所有信息

打开https://xdebug.org/wizard.php,粘贴 phpinfo() 输出的所有信息,然后点击下方按钮进行分析


分析结果中会出现适合当前环境的Xdebug版本,以供下载。

2> 解压xdebug-2.5.5 tgz

3> 在 xdebug-2.5.5 主目录中执行 /Applications/XAMPP/xamppfiles/bin/phpize-7.2.32 命令:

JW:xdebug-2.5.5 administrator$ cd /Users/administrator/Downloads/xdebug-2.5.5/xdebug-2.5.5 
JW:xdebug-2.5.5 administrator$ phpize
Configuring for:
PHP Api Version:     20131106
Zend Module Api No:   20131226
Zend Extension Api No:  220131226
JW:xdebug-2.5.5 administrator$       
  phpize是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块
phpize依赖于autoconf,如果没有安装autoconf,则执行brew install autoconf命令来安装autoconf;

注:执行 brew install autoconf 命令前,要确保系统已安装homebrew


4> 在xdebug-2.4.0主目录中执行configure,配置php-config路径:./configure --with-php-config=/Applications/XAMPP/xamppfiles/bin/php-config-7.2.32

5> 执行make

6> 执行sudo make install

执行成功后,会自动打出xdebug.so的位置,将xdebug.so 拖入 /Applications/XAMPP/xamppfiles/bin 文件夹;

7> 打开 /Applications/XAMPP/xamppfiles/etc/php.ini  文件,搜索 zend_extension:

在其下添加如下代码(粘贴时请删除注释):

zend_extension = /Applications/XAMPP/xamppfiles/bin/xdebug.so  //这是配置xdebug
xdebug.remote_enable = On //是否运行远程终端,必须开启
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_port = 9000  //这个端口号要和phpstorm中的保持一致
xdebug.idekey = PHPSTROM //调试器关键字


8> 重启Apache,并在首页html中添加如下代码查看Xdebug是否配置成功:

<?php echo phpinfo() ?>

成功配置界面如下 :


9> 配置phpstorm以支持xdebug

1. 配置端口


2. 配置PHP Web Application








举报

© 著作权归作者所有


0