前言:
本文为自己记录所用,不一定会与你一致。
因为最近又重装了系统,而且刚好需要用到本地调试环境,于是就做了一下记录,方便以后又重装系统。
提示:需要homebrew,官网:https://brew.sh/index_zh-cn,没安装的可以直接使用命令安装:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
一、 安装mysql
使用brew安装mysql
$ brew install mysql
启动mysql服务
$ sudo brew services start mysql
二、安装PHP
(如果不需要各种拓展的话,可以直接使用系统自带的php;编译也可,不过编译拓展库简直折磨人)
使用brew安装php
先查找php的包名,命令:
$ brew search php
,我这里目前是“php@7.3”安装:
$ brew install php@7.3
切换首选的PHP
(本步骤实际上在brew安装php之后,终端有给提示,建议去你的终端复制!)
由于macOS系统自带了php,我们需要将默认php切换到刚刚安装的php:
# 注意:“php@7.3”是我当前安装的版本,“.zshrc”是因为我用的是zsh,请如实填写 echo 'export PATH="/usr/local/opt/php@7.3/bin:$PATH"' >> ~/.zshrc echo 'export PATH="/usr/local/opt/php@7.3/sbin:$PATH"' >> ~/.zshrc export LDFLAGS="-L/usr/local/opt/php@7.3/lib" export CPPFLAGS="-I/usr/local/opt/php@7.3/include"
编辑apache的httpd.conf配置文件,路径是/etc/apache2/httpd.conf,在头部写入以下内容并保存:
LoadModule php7_module /usr/local/opt/php@7.3/lib/httpd/modules/libphp7.so # 注意:“php@7.3”是我当前安装的版本 <FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
启动php服务
brew services start php@7.3
安装后的文件路径(仅留作记录)
php.ini在: /usr/local/etc/php/7.3/
三、启用apache
- 由于macOS系统自带了apache,默认是关闭的,我们直接启动它即可使用,终端命令:
$ sudo apachectl start
- (可选)修改apache的运行路径根目录:
$ sudo vim /etc/apache2/httpd.conf
找到以下类似代码,将xxx修改为你想改的路径
DocumentRoot "xxx"
<Directory "xxx">
测试
自行写个php连接数据库的demo,如果连接失败遇到报错:“The server requested authentication method unknown to the client”,则终端连接mysql后,输入以下命令,
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'xxxYourPassword';
# ‘xxxYourPassword’中填写你即将更改的mysql新密码,
这个问题参考文章:https://blog.csdn.net/xiaoxinshuaiga/article/details/82798919
使用系统自带的php方式:
配置php.ini
- 生成一份php.ini,终端执行命令:
sudo cp /etc/php.ini.default /etc/php.ini
- 编辑php.ini,取消掉所需模块的注释:
sudo vim /etc/php.ini
例如;extension=pdo_mysql
,取消掉注释以启用pdo_mysql模块——也就是去掉“;”号:
先make一遍源码,参考->某文章,(php.ini里的extensions路径在系统文件里的话需要解除系统只读状态)
make编译之后,单独安装pdo:
cd 到 源码/ext/pdo
$./ext/pdo/phpize
$./ext/pdo/configure --with-php-config=/usr/bin/php-config
$ make && make install
再安装pdo_mysql:
cd 到 源码/ext/pdo_mysql
$./ext/pdo_mysql/phpize
$./ext/pdo_mysql/configure --with-php-config=/usr/bin/php-config --with-pdo-mysql=/usr/local/Cellar/mysql/8.0.19/
fatal error: 'php.h' file not found
,没救了,再见。用brew安装吧。