- - PR -
PHP(imap_open)のコマンドラインとブラウザの挙動の違い
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-07-11 10:56
皆様こんにちは。
以下の環境にてPHPスクリプトを作成しております。 OS: Solaris10 SPARC Apache 2.2.8 PHP 5.2.6 IMAPにてメールを参照するために、以下のようなスクリプトを 作成しました。 <?php var_dump($argv); $uid = imap_open("{アドレス:143/imap/notls}","ユーザ名","パスワード"); if ($uid==false){ echo imap_last_error(); return ; } $headers = imap_headers($uid); var_dump($headers); imap_close($uid); ?> これをコマンドラインから実行すると動作するのですが、ブラウザから 実行すると以下のようなエラーが出力されます。 Warning: imap_open() [function.imap-open]: Couldn't open stream {アドレス:143/imap/notls} in /usr/local/apache/htdocs/imaploader.php on line 4 Can't connect to アドレス,143: Error 0 Apache は以下のようにコンパイルしており、 ./configure --prefix=/usr/local --disable-ipv6 --disable-ssl --with-mpm=worker --enable-rewrite --enable-so --with-ldap --enable-ldap --enable-authnz-ldap PHP は以下のようにコンパイルしております。 ./configure --prefix=/usr/local --with-config-file-path=/usr/local/lib/php --disable-ipv6 --with-iconv-dir=/usr/local --with-gettext=/usr/local/share/gettext --with-openssl=/usr/local --with-imap=/usr/local/c-client/imap-2006j --with-imap-ssl=/usr/local --with-zlib --with-apxs2=/usr/local/apache/bin/apxs --with-pgsql=/usr/local/pgsql --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysq/bin/mysql_config --enable-mbstring --enable-mbregex --with-ldap=/usr/local また、インストールされた libphp5.so 中には imap_open 関数が含まれているようです。 % nm /usr/local/apache/modules/libphp5.so | grep imap_open [22456] | 4432660| 4356|FUNC |GLOB |0 |13 |imap_open 尚、c-client のバージョンを 2004g や 2007b に変更しても結果は同じでした。 このような状況ですが、今後どのように問題を切り分ければ良いか、アドバイスを 頂けませんでしょうか。 どうぞよろしくお願いいたします。 [ メッセージ編集済み 編集者: しるしる 編集日時 2008-07-15 16:19 ] |
|
投稿日時: 2008-07-16 11:12
はじめまして
しるしる様 私も同様の現象で悩んでいます。 (これまで正常稼動していたものが、7月11日頃から動かなくなりました。 現象がしるしる様の書き込みの内容とほぼ同じです。) その後問題は解決されましたでしょうか? |
|
投稿日時: 2008-07-16 18:57
原因が判明しました。
こちらの環境では Apache を mpm=worker でコンパイルしており ますが、これを mpm=prefork でコンパイルし直す事で imap_open が動作致しました。 参考) http://bugs.php.net/bug.php?id=29465 以上、どうもありがとうございました。 # c-client を thread safe でコンパイルする方法等あれば # コメントを頂けますと幸いです。 ![]() P.S. 未記入様、そちらの環境ではいかがでしょうか? |
|
投稿日時: 2008-07-17 20:02
しるしる様
未記入です。 ウチはまだ復旧していません。 ウチは元々mpm=preforkでコンパイルしているので、これが原因ではなさそうです。 ちなみに これまで正常稼動していたのですが、突然、動かなくなりました。 コマンドラインからは動作するのに、ブラウザからは動作しない状況です。 (sendmail、ftp、geturlなど、別サーバーに対する処理がNG状態です) しるしる様も、突然、動作しなくなったのですか? # c-client を thread safe でコンパイルする方法等あれば # コメントを頂けますと幸いです。 ごめんなさい。調べてみます。 |
1