http://oshiete1.goo.ne.jp/kotaeru.php3?q=554339
を読んだのですが、きちんと text/htmlで出力しているにも関わらず、FireFox、Operaで開くとhtmlソースが出てしまいます。
(win IE、Mac Safariではhtmlとして(きちんと)開かれる)
ソースは以下の通りです。
(テスト用で必ずエラーページを出力するようになっています。)
---------------------
#!/usr/local/bin/perl
require 'cgi-lib.pl';
require 'jcode.pl';
&ReadParse(*form);
$userID = "$form{'id'}"."\n";
open(KEIJI,"<id.dat") || die "File Open Error";
@all = <KEIJI>;
close(KEIJI);
foreach(@all){
#ワードを配列に追加
push @wordList,$_;
}
$messageID = 0;
foreach(@wordList){
if($userID eq $_){
$messageID = $count;
last;
}
$count = $count + 1;
}
if($messageID eq 0){
&error_output;
exit;
}
sub error_output{
print "Contest-type:text/html\n\n";
print << "EOM";
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
</body></html>
EOM
}
------------------------
要は「このファイルはhtmlです」とプラウザーに
伝えれればいいとは思うのですが、もしお分かりの
方がいらっしゃいましたら、教えていただければ
ありがたいです。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
MIMEタイプが「text/html」ではなく「text/plain」になっているせいでしょう。
サーバが元々登録していないのか.htaccessで自分で変更しているのかな?わたしも詳しくないので(汗)
No.1
- 回答日時:
えと、私はPerlをかけない人間なので的外れかもしれませんが
print "Conte s t-type:text/html\n\n"
「sじゃなくてn」というタイプミスではないかと。
と。
で、もし
Content-Type: text/html; charset=Shift_JIS
を吐き出すなら
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
の行は必要ないような気がします。
P.S.ところで・・・・本当にHTML"2.0"でいいのでしょうか?
すいません、「sじゃなくてn」に修正したら大丈夫になりました!
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
も削除しても大丈夫でした。
HTML"2.0"の行も必要は無いですね・・。
どうもありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL php テーブルを作れない 2 2022/11/17 18:22
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングについての質問...
-
ラジオボタンが両方とも選択で...
-
wordの数式について 定積分を書...
-
INPUT TYPE
-
WEBページを強制的に横画面で見...
-
別formのhidden項目を自form値...
-
CGI→CGI変数の引き継ぎは...
-
チェックボックスの返す値
-
VB.net データーグリッドビュー...
-
iframeごとに戻るボタンを
-
select値をhiddenのvalueに渡し...
-
vsftpd+sslでアップロードできない
-
ディレクトリのファイル数取得
-
perl/cgi リダイレクトができない
-
クッキーを使って投票欄に名前...
-
テキストBOXの縦幅
-
tracert ができない原因
-
プルダウンメニューにテキスト...
-
postデータのあるページの再表示
-
コンボ1の内容に応じてコンボ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UTF-8で文字化けしないようにす...
-
cgiからsendmailを送信で文字化け
-
perlを難読化、暗号化させたい
-
プログラミングについての質問...
-
cgiで動画ファイルをアップロー...
-
CGI実行できない。ソースが表示...
-
WEBアプリケーションからフォル...
-
CGI管理ページなどより背景画像...
-
content-dispositionによるファ...
-
wordの数式について 定積分を書...
-
ラジオボタンが両方とも選択で...
-
select値をhiddenのvalueに渡し...
-
「value」に2つの値をセットす...
-
チェックボックスの返す値
-
INPUT TYPE
-
WEBページを強制的に横画面で見...
-
[HTML]プルダウンメニューの横...
-
VB.net データーグリッドビュー...
-
別formのhidden項目を自form値...
-
FORMのselectの選択肢を最初か...
おすすめ情報