MacOS Mojaveにアップグレードした後、ApacheはPHP拡張機能をロードできません。拡張機能を使用すると、Apacheログに以下のエラーが表示されます。Apple MacOS MojaveのApacheを介してライブラリ検証を実装したため、署名のないバイナリをApacheでロードすることは明らかに不可能になっています。
MacOSのSIPを無効にするための回避策はありますか?
Failed loading //usr/local/php/extensions/xdebug.so: dlopen(//usr/local/php/extensions/xdebug.so, 9): no suitable image found. Did find: //usr/local/php/extensions/xdebug.so: code signature in =(//usr/local/php/extensions/xdebug.so) not valid for use in process using Library Validation: mapped file has no cdhash, completely unsigned?
コードには少なくともアドホック署名が必要です。 //usr/local/php/extensions/xdebug.so:stat()がerrno = 22で失敗しました
スレッド Mojaveへのインストール には、いくつかの独立した回避策がリストされています。
/etc/Apache2/httpd.conf
の最後に行を追加します
LoadModule php7_module libexec/Apache2/libphp7.so
まだ/etc/Apache2/httpd.conf
にあり、545行目のコメントを外します
Include /private/etc/Apache2/other/*.conf