QA@IT

httpヘッダの付加について

2040 PV

linux上のApache2上でJSON形式文字列を返すCGIを作成しているのですが
CGIではJSON形式文字列を返すだけで、Content-type等を出力していないので
Apache2で「Premature end of script headers:~」とエラーになってしまいます。
Apache2で自動的にContent-typeを付加し、エラーとせずにクライアントに
JSON形式文字列を返す設定はないのでしょうか。

回答

なにかで調べてContent-typeが不足していると至ったのかもしれませんが、
エラーを見るにスクリプトに問題があるように思います。

たとえば改行コードなどを見直されてはどうでしょうか(ソース含め \nになっていますか?)。
ソースの作成もLinux上で行っていますか?Windows上で作成してFTPなどで転送していますか?後者であれば特に改行コードに気を付けてください。

作成されている言語が不明ですが(CGI自体は仕組みのようなものです)、
その言語で簡単なhtmlの出力するCGIを試しに動かすことはできていますか?
(なおContent-typeは通常CGIからも出力できます。)

mod_rewriteや.htaccessのdefault typeなど機能としては存在しますが、
現状で適用しても効果がないような気がします。

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。