search
LoginSignup
1
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

phpのバージョン更新で、apacheが動かない場合の対処法

状況説明

開発環境
  • Server:Apache/2.4.25 (Unix)
  • OS:mac 10.12.16
  • php:5.6
何かあった
  • 昨日MacデフォルトのPHPバージョンを5.6から7.2に更新しました。更新した直後はローカルのzendframeworkアプリは普通に動いています。
  • 今日一回apacheをrestartしたら、localhostが開かなくなった。どうやらapacheが動けなくなったらしい。
  • 問題特定するため、ターミナルにhttpd -tを入力したら、「Syntax OK」しか返ってこない。
  • 他には sudo apachectl configtest も試したけど、「Connection refused」が返って、原因の特定に至っていませんでした。

問題の在り処

その後も色々試したあと、最終的に問題点を掴みました。

PHPの更新によって、apacheの設定も更新しなければならない

何かアホそうな結論に至ってしまいました(汗)。

対処法

  • 原因として、apacheでphpのプログラムを動かしたい場合、引用が必要です
  • MACでは予めapacheが搭載され、デフォルト的にはphp5を指定しています:
httpd.conf
LoadModule php5_module libexec/apache2/libphp5.so
  • ただphpの更新で、引用も新しいバージョンに変えないと、apacheが動けなくなりそうです。
  • 解決策はシンプルに、新しいバージョンの引用を付き加えれば良い
httpd.conf
#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php7_module 「ここは自分のlibphp7.soの位置を指定」
  • libphp7.soの位置がわからない場合は、ターミナルに「locate libphp7.so」を打ってば分かるはずです。
  • httpd.confの位置は/etc/apache2/にありますが、システムに違いによって異なる可能があります、また、homebrewでインストールされたapacheでは別の場所にいますので、httpd -Vで確認できます。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
1
Help us understand the problem. What are the problem?