WindowsにPHP4.4.8とApache2.2.8をインストールしたら起動エラーになる場合の対処方法

WindowsXP上に、Apache2.2.8とPHP4.4.8をインストールしたら、下記のエラーが出てApacheが起動しなくなります。

apache_error.JPGのサムネール画像

 

エラーメッセージ:

Error:The requested operation has failed!


症状

PHP4.4.8をインストールした後で、httpd.confを書き換えてApache2.2.8を再起動すると、
Error The request operation has failed!

というエラーが出て起動に失敗する。
さらに、ApacheのTest Configurationを実行すると、次のようなエラーが出る。

C:\Documents and Settings\Administrator>httpd.exe: Syntax error on line
128 of C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf:
Cannot load C:/php/sapi/php4apache2.dll into server: \x8ew\x92....
Note the errors or messages above, and press the <ESC> key to exit. 

原因

Googleで検索しまくること3時間、ついに原因を突き止めました。

PHPのsapiフォルダにあるphp4apache2.dll というファイルが、apache2.2.xに対応していないそうです。

解決策

Apache 2.2.xとPHP 4.4.0-4.4.7用に対応したphp4apache2.dll-php4.4.x.zipをゲットして、設定します。

  1. http://www.apachelounge.com/download/ にアクセス
  2. ページの中ほどにある、php4apache2.dll-php4.4.x.zipをダウンロード
  3. apache-dll.jpg




  4. 解凍する。
  5. 解凍したフォルダ中のphp4apache2.dllを、既存(php\sapi\)のphp4apache2.dllに上書きコピーして置き換える。
  6. 解凍したフォルダ中のhttpd.exe.manifestを、C:\Program Files\Apache Software Foundation\Apache2.2\bin\ にコピー
  7. Visual C++ 2005 SP1 Redistributable PackageをMSのサイトからダウンローしてインストール。
    http://www.microsoft.com/downloads/details.aspx?FamilyID=200b2fd9-ae1a-4a14-984d-389c36f85647&DisplayLang=en
  8. httpd.confに下記を追加
  9. LoadModule php4_module "c:/php/php4apache2.dll"
    AddType application/x-httpd-php .php
  10. Apache2.2を再起動(restart )

これで無事、Windows上でApache2.2.xとPHP4.4.xが起動できると思います。(^^)v


・・・とここまで書いたところで、既に同じことを書いてあるサイトを発見。orz

カテゴリ: