您现在的位置是:首页 >学无止境 >MacOS12, M2,Monterery,自带的Apache添加PHP8.0.28支持方法网站首页学无止境
MacOS12, M2,Monterery,自带的Apache添加PHP8.0.28支持方法
由于是在国内,首先切换到国内的brew镜像源.
export HOMEBREW_BREW_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git"
export HOMEBREW_CORE_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git"
export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles"
export HOMEBREW_API_DOMAIN="https://mirrors.ustc.edu.cn/homebrew-bottles/api"
/bin/bash -c "$(curl -fsSL https://mirrors.ustc.edu.cn/misc/brew-install.sh)"
截止发文时,php的版本是8.2.4,由于当前要处理的的wordpress项目使用的是8.0.28,有些语法之类的8.2.4会报警告.处理php.ini无果(应该是可以关闭代码对ini配置的修改,没有尝试)
要安装非lts版本,所以brew安装要带版本号.
brew install php@8.0
安装完以后,终端中并不会找到php,没有环境变量,要执行
brew link php@8.0
这时候可以执行
php -v
来查看php是否安装成功.
上面的brew安装php8步骤执行完时的提示中会显示你的php8安装在什么位置了,包括配置文件在什么位置都有提示,英文的可以注意看一下.
默认的我的M2 (ARM cpu),Monterey也就是Macos 12 版的php.ini是安装在了
/opt/homebrew/etc/php/8.0/php.ini
php的主程序是安装在
/opt/homebrew/Cellar/php@8.0/8.0.28/bin/php
这两个文件的位置要注意,网上不是此系统版本的会有差异.
重新安装httpd是可选项,也就是重装apachectl
如果需要重装,需要把之前的停掉再重新安装
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
brew install httpd
如果重装httpd,需要配置一下端口号:
/opt/homebrew/etc/httpd/httpd.conf
中搜索8080,改成你要的端口,如果改成80就是默认使用127.0.0.1 或者localhost不用加端口就可以访问.
把页面文件地址改一下,像下面这样:
DocumentRoot "你存放php网站的地方"
<Directory "你存放php网站的地方">
在一堆LoadModule后面添加一个php的引用
LoadModule php_module /opt/homebrew/Cellar/php@8.0/8.0.28/lib/httpd/modules/libphp.so
注意这里不要按照以前的php7_module等习惯写成php8_module之类的,就是php_module
保存,这时候httpd(apache)还不能解析php文件,就像iis要配置解析aspx需要单独设置一样
编辑mime.types文件,后面追加两行
application/x-httpd-php php
application/x-httpd-php-source phps
在你存放php网站的地方写一个info.php (名字随意.php)
内容:
<?php phpinfo()?>
终端输入
sudo apachectl restart
输入密码
访问
localhost:你刚修修改过后的端口/info.php
即可看到php探针页面
至此macos 12 自带的apache启动和php集成都完成了.
如果你打开的网页是空白的值显示<?php phpinfo()?> 不显示探针,那就是mime.types文件没有修改或者是修改了以后apache(httpd) 没有重启.