2009年12月16日

バージョン上げたらPostgreSQLに接続できなくなったでござる!

とあるWindowsXPのPHPを5.0.4から5.2.11にバージョンアップしました。
面倒くさいのでzip版を解凍して置いて、php.iniを直したら、phpでPostgreSQLに接続できなくなってしまいました。phpinfo()で見てもpgsqlの項目が出てきません。
PostgreSQLのバージョンは8.1.1でした。
Apacheのログを見ると

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\PHP\\ext\\php_pgsql.dll' - \x8ew\x92\xe8\x82\xb3\x82\xea\x82\xbd\x83v\x83\x8d\x83V\x81[\x83W\x83\x83\x82\xaa\x8c\xa9\x82\xc2\x82\xa9\x82\xe8\x82\xdc\x82\xb9\x82\xf1\x81B\r\n in Unknown on line 0

とエラーが出ていました。でも意味不明です。

いろいろ具具って見たらどこかのページにlibeay32.dllやssleay32.dllのバージョンが古いのかもみたいな事がでていたので(PHPのマニュアルのコメント欄だったかも!)、ふとPostgreSQLのbinのフォルダを見たらlibeay32.dllがありました。
Windowsの環境変数PATHの最後に…;C:\PHP\と書いていたのですが、これをPATHの先頭にもっていって、PCを再起動したらApacheのエラーログにエラーが出なくなって、PHPから接続できるようになっていました。

めでたしめでたし。

えらい時間かかってしまった。こんなん、わかるかい!!
posted by ほえ at 16:24| Comment(0) | TrackBack(0) | PHP | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。