渋谷で引きこもってる社長です

株式会社Chotchy代表取締役 / エンジニア

やばい!Apacheがうごかない!libphp5.so requires version 6.0.0 or later系とか

またまたMacが落ちた。

そうするとapacheとかも全部止まる。

僕はHomebrewで環境をすべて構築していますが、またしてもこのクソ忙しい時に落ちました。

そしたらApacheがうごかない!!

これはやばい。泣きそうでした。こんな時はエラーログとちゃんと対話すること。

 

httpd: Syntax error on line 116 of /usr/local/etc/apache2/2.2/httpd.conf: Cannot load /usr/local/Cellar/php55/5.5.15/libexec/apache2/libphp5.so into server: dlopen(/usr/local/Cellar/php55/5.5.15/libexec/apache2/libphp5.so, 10): Library not loaded: /usr/local/lib/libapr-1.0.dylib\n  Referenced from: /usr/local/Cellar/php55/5.5.15/libexec/apache2/libphp5.so\n  Reason: Incompatible library version: libphp5.so requires version 6.0.0 or later, but libapr-1.0.dylib provides version 5.0.0

んんん?バージョンが古い?どういうことだ?

とりま、libapr-1.0.dylibをさがす.

 

find -name libapr-1.0.dylib

あった。/usr/local/....の奥底に。これ絶対ちがくね?とりあえず、cpで移動。なおるけど、違うファイルが見つからないと怒られる。根本的に何かが違う。。。

そういえば、このまえphpのバージョンを変えたのに気づく。もしかしたら、libphp5.soを古いやつをよみこんでるのでは…?

find -name libphp5

すると

/usr/libexec/apache2/libphp5.so
/usr/local/Cellar/php55/5.5.15/libexec/apache2/libphp5.so
/usr/local/Cellar/php55/5.5.21/libexec/apache2/libphp5.so
/usr/local/Cellar/php56/5.6.0-rc.4/libexec/apache2/libphp5.so
/usr/local/Cellar/php56/5.6.5/libexec/apache2/libphp5.so

ふむふむふむ。httpd.confをみる。

LoadModule php5_module        /usr/local/Cellar/php55/5.5.15/libexec/apache2/libphp5.so
LoadModule php5_module        /usr/local/Cellar/php55/5.5.21/libexec/apache2/libphp5.so
LoadModule php5_module        /usr/local/Cellar/php56/5.6.5/libexec/apache2/libphp5.so

一番上いらなくね?ってことで一番上を消す。 うごいた!!!!!