MacのOSをEl CapitanにアップグレードしたらPHPが使えなくなったので対処しました。


背景

アップグレード恐怖症なわたくしですが、だいぶ眺めの様子見期間に終止符を打つべく
MacBook Proにて以下の環境からOSをEl Capitanにアップグレード。

  • MacBook Pro (Retina, 13-inch, Mid 2014)
  • OS: Yosemite(バージョン情報メモってなかったのでわかりません)
  • PHP 5.5.31
  • Apache/2.4.18 (Unix)

その後、何か動かなくなったり使えなくなったりしているアプリケーションとか無いかなぁと確認中に
以下事象が判明。

事象

PHP動いてるかなぁと、MacのデフォルトDocumentRoot(/Library/WebServer/Documents)に置いていた動作確認用のファイル「phpinfo.php」

phpinfo.php
<?php

phpinfo();

?>

にブラウザからアクセス( http://localhost/phpinfo.php )したら...

ありゃ、動いとらんねと判明。

原因

コードは表示されているのでApacheは起動している。
ってことはApacheの設定が書き換わったか?

と推察し確認してみたら、OSのアップグレードによって
Apacheの設定ファイルが上書きされ、PHPモジュール読み込みの記述がコメントアウトされていた...オイ!(笑)

$ ls -al /etc/apache2/

$ sudo vim /etc/apache2/httpd.conf

httpd.conf
168 #LoadModule ...
169 #LoadModule php5_module libexec/apache2/libphp5.so
170 #LoadModule ...

解決策

1. /etc/apache2/httpd.conf のPHPモジュール読み込み部分のコメントアウトを外す

$ sudo vim /etc/apache2/httpd.conf

httpd.conf
168 #LoadModule ...
169 LoadModule php5_module libexec/apache2/libphp5.so
170 #LoadModule ...

2. Apacheを再起動

$ sudo apachectl restart

再度ブラウザにて確認

はい完了。

最後に

「Time Machineでバックアップは取ってるから何か問題があったら戻しゃあいいかー」
という前提でOSをアップグレードしたのですが、やはり何かありましたね。
まぁ大した問題ではなかったですが。