アプリ版:「スタンプのみでお礼する」機能のリリースについて

NO.202703の質問をしたものです。

1.Premature end of script headers: c:/www/public_htm/up_file.cgi

2.String found where operator expected at c:\WWW\PUBLIC~1\UP_FIL~1.CGI line 59, near "open INDD1, "$indd1""

3.syntax error at c:\WWW\PUBLIC~1\UP_FIL~1.CGI line 58, near "open(INDD1, "$indd""

4.Execution of c:\WWW\PUBLIC~1\UP_FIL~1.CGI aborted due to compilation errors.

2.3.4.のエラーについては、解決?できました。
(エラー行をコメント(#)にしたりしてるうちに・・・原因はよくわかりませんでしたが・・・)

1.のエラーの意味がわかりません。
 script headers って何のことなんでしょうか?

※ このエラーログはApacheのサーバーのログです
※ このCGIは、フォームデータを受けっとてファイルを更新するようになっています。

A 回答 (2件)

Premature end of script headersというエラーは、


「CGIからhttpdに返されたヘッダーが正常に終了していない」という大雑把なエラーメッセージなので、
原因は「これだっ」というのが特定できません。 エラーログがあるのならば、まずエラーログを見てみると
良いかもしれません。

一応、チェックするべきところを書いてみます。
1.ソースの1行目に#!/usr/local/bin/perlのようなperlまでのパスを記述してあると思いますが、
そのパスはあっていますか?
2.改行コードは正しいでしょうか?改行コードが正しくないと、#!/usr/local/bin/perlの後に
余分なものがついてパスが正しく認識されないので、確認してみてください。
    • good
    • 0
この回答へのお礼

ありがとうございます。

パスの記述は、あっているようです。

改行コードについてなんですが、改行コードを調べる方法がわかりません。
エディター(Wordpad)で単純に改行(Enter)しているだけなんですが、・・・

ご指摘のとおり、プログラムをべつのCGIにまるごとコピーして実行すると、
できたりすることがあります。
つまり、改行コードにかぎらず、変なコードが混ざってる(ソース上では見れない)ってことですかね・・・

ファイルをHexモードで表示できるツールみたいなのはありますか?

あと、このプログラムなんですが

 &sub1;
 &sub2;
 &sub3;

といった感じになっていて、MAINでは、サブを呼んでるだけなんですが、ここに簡単な、コードを追加すると動くみたいなんです。

例えば:

 &sub1;
 &sub2;
 &sub3;
 PRINT ”OK !¥n”

MAINでサブをコールだけの構造というのは、文法上、誤ってるのでしょうか?
  

お礼日時:2002/01/23 02:14

私も改行コードの変換ということはやったことがないのですが、


参考URLにはshinsa14と同じエラーでの質問に対する答えのようなので、
参考にしてみてください。

>MAINでサブをコールだけの構造というのは、文法上、誤ってるのでしょうか?
sub1,sub2,sub3があるファイルをrequireしていればまったく問題ないと思いますよ。

また、KcatchというPerl用のデバッガがあるので、それを使ってみると、
「Premature end of script headers」より詳しいエラーが吐き出されると思うので、
使ってみてはいかがでしょうか。↓がダウンロードと説明ページです
http://www.kawa.net/works/perl/catch/news.html

参考URL:http://mm.apache.or.jp/pipermail/newbie/2001-Nov …
    • good
    • 0
この回答へのお礼

ありがとうございました。
参考URLのところ参考になりました。
原因は、はっきりわからなかったんですが、なんとなく解決してしまいました。
また、よろしくお願いします。

お礼日時:2002/01/26 18:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!