• ベストアンサー

ネットスケープだとソースが表示されてしまう・・・

掲示板をc言語のcgiで製作しています。 しかし、表示させる段階になったのですが IEだと正常に表示されるのですが、ネットスケープだと CGIで吐き出したHTMLソースが丸見えになってしまって 正常に表示されません。 何か、原因として考えられる物があったら教えてくれませんか? ページの方はLAN内のサーバーなのでグローバルでアクセスできる環境ではありません。

質問者が選んだベストアンサー

  • ベストアンサー
  • honiyon
  • ベストアンサー率37% (331/872)
回答No.2

こんにちは、honiyonです。  NINJA104さんの補足という形になりますが、ちゃんと最初に    Content-Type: text/html  が出力しているか確認してください。  これがなかったり、 Content-Type: text/plain になっていたりするとソースが丸見えになる可能性があります。  因みに、出力後に改行2個(\n\n)を入れると良い感じです。  参考になれば幸いです(..

clow_h
質問者

お礼

たしかに "text/plain"になっていました。 どうもありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • NINJA104
  • ベストアンサー率43% (133/306)
回答No.3

honiyon氏の指示で正解です。 尚、Contentヘッダでは大文字小文字にも注意してください。 誤:content-type: 正:Content-Type: です。

すると、全ての回答が全文表示されます。
  • NINJA104
  • ベストアンサー率43% (133/306)
回答No.1

C言語での作成に限らす、HTMLソースを送出する際はRFCにのっとったContentヘッダを事前に出力しなければなりません。 IEはContentヘッダが送られてこなくとも、<HTML>を見付けると“勝手”にHTMLと見なす様です。

clow_h
質問者

補足

printf文でHTMLを吐き出す時は printf("content-type: text/plain\n\n"); を吐き出した後にHTMLタグをprintfしているのですが… ためしに、<head>~</head>でも<META>でcontentを出してみたのですが… どうでしょうか?

すると、全ての回答が全文表示されます。

関連するQ&A