pplogpのupload.cgi
pplogpをbeta 3にしたら記事が全く投稿できないという症状に見舞われた。
職場の新サーバがダメ。さくらサーバは問題なし。
ウェブから直接/pplogp/upload.cgiを実行するとエラー500。
改行コード(CRLFであるべき)や日本語コード(EUCであるべき)を確認、両方とも問題なし。
apacheのerror_logには、
[Wed Apr 01 12:28:25 2009] [error] [client 133.24.28.17] (2)No such file or directory: exec of ‘/home/WWW/pplogp/upload.cgi’ failed, referer: http://www.cm.kj.yamagata-u.ac.jp/pplogp/admin.php?mode=entry
[Wed Apr 01 12:28:25 2009] [error] [client 133.24.28.17] Premature end of script headers: upload.cgi, referer: http://www.cm.kj.yamagata-u.ac.jp/pplogp/admin.php?mode=entry
のように出ていた。
” Premature end of script headers”の解決策をウェブで探したところ、http://sagittarius.dip.jp/~toshi/premature.htmlに情報があった。改行コードの誤認識が起きることがあるそうな。
upload.cgiの1行目を
#!/usr/local/bin/perl
から
#!/usr/local/bin/perl —
に変えてみたところ、無事投稿できるようになった。