検索中のページに問題があるため、ページを表示できません。Web サーバーがゲートウェイまたはプロキシ サーバーとして動作し、上位のコンテンツ サーバーと通信しているときに、コンテンツ サーバーから無効な応答を受信しました。
(2016/8/2 追記) ISAPI 拡張では stdout/stderr を使いませんので、存在しません。GetStdHandle を呼び出しても恐らく NULL が返ってくるだろうので、NULL アクセスで Access Violation になり、エラー落ちするのだと考えられます。
What is an ISAPI Extension? に記述のある EXTENSION_CONTROL_BLOCK の ReadClient と WriteClient を代わりに呼び出すだけです。
さて、エラーは次の条件下で発生するようです:
- IIS6以上を使っている。
- phpやperlなどを使っている。CGI/ISAPIに関係なく。
- stderrに何かを出力する。
可能性の高い例として、外部プログラムがstderrに出力する場合が挙げられます。
対策例:
exec("pdftk.exe 2>&1", $output, $retval);
コマンドの末尾に"2>&1"をくっ付けて、stderrからstdoutにリダイレクションするか、
"2>NUL"で、Nullデバイスに捨てるのが手っ取り早い対策です。。。
参考:
PHP StdErr after Exec()
http://stackoverflow.com/questions/2320608/php-stderr-after-exec
php5でのexecとstderr
http://dd-kaihatsu-room.blogspot.jp/2013/03/php5execstderr.html
0 件のコメント:
コメントを投稿