MacOS Apache配置php报错:
[so:error] [pid 19150] AH06665: No code signing authority for module at /opt/homebrew/opt/php/lib/httpd/modules/libphp.so specified in LoadModule directive.
httpd: Syntax error on line 208 of /private/etc/apache2/httpd.conf: Code signing absent - not loading module at: /opt/homebrew/opt/php/lib/httpd/modules/libphp.so
黄太龙
第一步:
MacOS的面板 --> 其他 --> 钥匙串访问
然后屏幕左上角菜单点击:
钥匙串访问 --> 证书助理 --> 创建证书
第二步:
选择 登录 - 我的证书
找到刚创建的证书,用右键点击该证书,选择“显示简介”,然后点开弹窗中的“信任”,全部选择为始终信任。
第三步:
用该证书给自己进行签名,这里libphp.so要换成你自己的路径。
sudo codesign --sign "zhuanfouPHP" --force --keychain ~/Library/Keychains/login.keychain-db /opt/homebrew/opt/php/lib/httpd/modules/libphp.so
签名成功后会提示类似下面:
/opt/homebrew/opt/php/lib/httpd/modules/libphp.so: replacing existing signature
第四步:
在apache配置文件/etc/apache2/httpd.conf中添加指定证书名称,重写导入php模块如下:
LoadModule php_module /opt/homebrew/opt/php/lib/httpd/modules/libphp.so "zhuanfouPHP"
“zhuanfouPHP”是我自定义的名称,你可以换成你自己的自定义根证书名称。
最后重启httpd即可发现你的php配置成功了。
“httpd -k restart”或者“sudo apachectl restart”都行。