本文共 451 字,预计阅读时间 2 分钟。
解决范围
报错
各种原因为 Incompatible library version 的报错
PHP版本
7.x
可适用于任何相关报错
macOS版本
macOS High Sierra, 10.13.4 (17E199)
经测试可适用于 10.12
通常 10.14 没有这个报错问题,如遇到请谨慎解决
解决方案
brew install -s php70
在 sudo apachectl configtest
显示 Syntax OK
的情况下可以忽略编号为 AH00558
的关于 ServerName 的报错。
问题详情
通过 Homebrew 以 brew install php70
类似方式安装了多个版本 PHP。
典型主要报错信息为:Incompatible library version: libphp7.so requires version 7.0.0 or later, but libaprutil-1.0.dylib provides version 4.0.0
典型全部报错如下:
1 | $ sudo apachectl -k restart |
解决详情
经过尝试各种添加 --with-xxx
之类的操作不能解决问题。
参考 homebrew-php Issue#763,使用 brew install -s php70
从源码安装,可以覆盖原来 macOS 自带的 Apache。
前后比对如下:
1 |
|
在运行 configtest 的时候会有一个报错,但是可以运行。报错如下:
1 | AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using CryusMBA.local. Set the 'ServerName' directive globally to suppress this message |
出现编号为 AH00091
的权限问题请自行 sudo 解决。