print 'Content-type: text/html '; の行方

このQ&Aのポイント
  • ブラウザで表示されるページのソースを見ると、<HTML>から始まっています。
  • print 'Content-type: text/html '; の部分はどこかにprintされているのでしょうか。
  • Internet ExplorerとFirefoxでは表示されるのに、Lunascapeではエラーとなり表示されません。なぜですか。
回答を見る
  • ベストアンサー

print "Content-type: text/html\n"; の行方

以下のようなスクリプトを作ってみました。 #!/usr/local/bin/perl print "Content-type: text/html\n"; print "\n"; print "<HTML>\n"; @week = ('Sunday','Monday','Tuesday','Wednesday','Thursday'); print $week[3],"\n"; print "</HTML>\n"; ------------------- 二つ疑問があります。 (1)ブラウザで表示されるページのソースを見ると、<HTML>から始まっています。 print "Content-type: text/html\n"; print "\n"; この部分はどこかにprintされているのでしょうか。 (2)Internet ExplorerとFirefoxでは表示されるのに、Lunascapeではエラーとなり表示されません。 どうしてそうなるのでしょうか。 よろしくお願いいたします。

noname#183584
noname#183584
  • CGI
  • 回答数1
  • ありがとう数2

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

  • ベストアンサー
  • Betamo
  • ベストアンサー率41% (5/12)
回答No.1

Content-typeはデータの情報です URL先が参考になるかと思います

参考URL:
http://www.mozilla.gr.jp/standards/webtips/webtips0033.html#c1_1
noname#183584
質問者

お礼

ありがとうございました。 参考ページのわかりやすい情報で理解できました。 (2)の問題はブラウザの使い方を間違えていた私の勘違いでした。 どうもありがとうございました。

関連するQ&A

  • "Content-type:text/html;charset=shift_JIS\n\n" がテキスト表示されてしまう。

    CGIで print "Content-type:text/html;charset=shift_JIS\n\n"; を出力すると その文字列がそのままブラウザにテキスト表示され、その後ろの操作、 例えば、 print "Status: 301 Move Permanent\n"; print "Location: http://localhost/file/data-1.lzh\n\n"; も、単純に文字列として表示されてしまいます。 ところが、print "Content-type:text/html;charset=shift_JIS\n\n"; の行を削除すると、 もともとの目的の動作(上記の例ではファイルのダウンロード画面ポップアップ)になります。 このように、print "Content-type:text/html;charset=shift_JIS\n\n";を書かなくて済む (あるいは書かない方が良い場合)というのは、なぜでしょうか。 サーバによっては動作が変わるのでしょうか。 ※そのCGI内で、print "Content-type:text/html;charset=shift_JIS\n\n"; を2行書いてあるというようなことはありません。 よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • Content-type: text/htmlが表示されてしまう

    PerlでCGIを作成しております。 海外のサーバーでCGIをアップしたところなぜかすべてのCGIで Content-type: text/html がページ上部に表示されてしまいます。 そのファイルは日本のサーバーでは問題なく動作しております。 print "Content-type: text/html\n\n"; print "<html><head><title>$site_title</title></head>\n"; 上のようにプログラムは書いております。 これは言語に依存するのですか? ご教示お願いします。

  • Content-type: を切り替える方法

    cgi で、 print "Content-type: text/html\n\n"; で、テキストやINPUT タグ等を表示した後、  print "Content-type: image/jpg\n\n"; で、Content-type を切り替えて画像を表示させ たいのですが、画像イメージがどうもテキストと 認識されるらしく、文字化けのテキストがずらずらっと表示されます。  上の順序を逆にすると今度は画像は表示されるものの、テキスト、タグが表示されなくなります。 どう書けば、両方の表示に対応できるようになるでしょうか。

  • awk等を用いて、スペースで区切られた特定の文字の次の引数を取得する

    awk等を用いて、スペースで区切られた特定の文字の次の引数を取得したいです。 具体的には cat text1 Monday Tuesday Wednesday Thursday Friday Saturday Sunday cat text2 Tuesday Wednesday Thursday Monday Saturday Sunday Friday とあるときに 常に"Thursday"のあとを抜き出したいです。 text1ならFriday text2ならMonday という感じです。 抜き出すもとのファイルは、スペースのみで区切られており ファイルの大きさはランダムです。 よろしくお願いします。

  • content-typeについて

    こんにちは。 メール送信のcontent-typeについて質問があります。 content-type="text/plain"で設定し、 HTMLメールを送信すると受信側はどのように表示されるのでしょうか? また、その逆(content-type="text/htmlでテキストメール送信")はどうなるのでしょうか? 確認する環境がないので申し訳ありませんが、 ご存知の方宜しくお願い致します。

  • perl CGIでのhttpヘッダー出力 (Content-type:

    perl CGIでのhttpヘッダー出力 (Content-type: text/html\n\n) が不要な場合について perlでCGIを作成しています。 多くの場合は、httpのヘッダー出力(Content-type: text/html\n\)を行っています。 毎回ではないですが、HTTPヘッダーの出力が不要な場合が存在します。 (HTMLにContent-type: text/html\n\が出力され表示されます。) そこで、HTTPヘッダーの出力が不要の場合の判断方法を教えていただければと思います。 よろしくお願いいたします。

  • 曲名とアーティスト名をしりたいです

    80年代後半から90年代前半によくディスコでかかっていたクラブ系の曲でSunday,Monday,Tuesday, Wednesday, Thursday, Friday, And Saturdayと繰り返し、しっとりと始まる感じの曲 で前半女の人で後半男の人が歌っていたと思います。どなたか曲名と歌っている人がわかる方教えてください。

  • "Sunday Monday Tuesday ♪♪・・・"の歌の歌詞教えてください!

    Sunday♪Monday♪ Tuesday♪Wednesday♪ Thursday・・・??? Friday♪Saturday♪ Sunday coms again!" というのは覚えてるのですが、Thursday のあと何か言葉が入りますよねぇ??リズム的にもそうなると思うのですが思い出せません。どなたかご存知の方教えてくださ~い!!

  • content-typeヘッダを先に出力してもいいでしょうか?

    SSIでCGIを呼び出し、ひととおりの処理をして最後にcontent-typeヘッダを出力しています。 アクセス解析用の環境変数を取得するだけで、ページ上には何も表示しない(ブラウザに何も返す必要がない)場合、  print "content-type: text/html\n\n";  print ""; としていますが、これを先に出力してもいいものでしょうか? ヘッダを先に出力してしまえば、その後スクリプトで時間がかかる処理をしても、ブラウザの「待ち時間」を最小にできるのではないかと思うのですが。

    • ベストアンサー
    • Perl
  • 何がいけないんでしょうか?

    test.cgiの内容↓ #!/usr/bin/perl print "Content-type: text/html\n\n"; PRINT "<HTML>"; PRINT "<BODY>"; PRINT "おはよう"; PRINT "</BODY>"; PRINT "<HTML>"; 500 Internal Server Error というメッセージが出ます。 どうしてですか?

    • ベストアンサー
    • CGI