Windows で Apache で PHP で cURL を使えるようにする。
今後のためにメモ。
php_curl.dll を配置して、php.ini を書き換えるだけでは読み込めないことがある。
コマンドラインから phpinfo() を実行すると読み込めても Apache からはダメだった。
原因は Apache が読んでる libeay32.dll、ssleay32.dll のバージョンが違うことだったらしい。
Apache の bin フォルダへ PHP フォルダにあったそれぞれの dll をコピーして再起動したら読み込めるようになった。
確認ポイント
1. 実行している PHP、Apache の設定ファイルの場所(複数インストールしてる場合要確認)。
php.ini の位置は phpinfo() で「Loaded Configuration File」の所に書いてある。
2. extension_dir の場所。
これも phpinfo() で確認。
3. PHP と dll のバージョンはあっているか。
PHP: Releases から該当バージョンの zip を取得。
ものによっては微妙にバージョン違っても動いちゃってる気がします…(→気づきにくい)
dll の プロパティ のバージョン情報に数字が書いてある。
ちなみに libeay32.dll、ssleay32.dll を配置したら php_openssl.dll が読み込めないというメッセージも消えました…
こんなところに原因が><。
php_curl.dll を配置して、php.ini を書き換えるだけでは読み込めないことがある。
コマンドラインから phpinfo() を実行すると読み込めても Apache からはダメだった。
原因は Apache が読んでる libeay32.dll、ssleay32.dll のバージョンが違うことだったらしい。
Apache の bin フォルダへ PHP フォルダにあったそれぞれの dll をコピーして再起動したら読み込めるようになった。
確認ポイント
1. 実行している PHP、Apache の設定ファイルの場所(複数インストールしてる場合要確認)。
php.ini の位置は phpinfo() で「Loaded Configuration File」の所に書いてある。
2. extension_dir の場所。
これも phpinfo() で確認。
3. PHP と dll のバージョンはあっているか。
PHP: Releases から該当バージョンの zip を取得。
ものによっては微妙にバージョン違っても動いちゃってる気がします…(→気づきにくい)
dll の プロパティ のバージョン情報に数字が書いてある。
ちなみに libeay32.dll、ssleay32.dll を配置したら php_openssl.dll が読み込めないというメッセージも消えました…
こんなところに原因が><。
by tokage-shippo
| 2010-02-04 15:12
| プログラミング