※ ChatGPTを利用し、要約された質問です(原文:手打ちしたコードがエラーになってしまう現象)
手打ちしたコードがエラーになってしまう現象
このQ&Aのポイント
手打ちしたコードがエラーになってしまう現象について調査しています。Windowsで参考書のコードを手打ちして実行するとブラウザでサーバーエラーが発生しますが、参考書のサンプルコードをUnix機にアップして実行すると問題ありません。どうしてこのような現象が起きるのか疑問です。
手打ちしたコードと参考書のコードは同じ内容&シンタックスエラーがないのに、ブラウザで確認するとサーバーエラーが出てしまいます。サンプルコードを上記の方法で実行すると正常に表示されるため、文字コードの問題を疑っています。
手打ちしたコードがエラーになってしまう現象について調査中です。Windowsで参考書のコードを手打ちして実行するとブラウザでサーバーエラーが発生しますが、参考書のサンプルコードをUnix機にアップして実行すると問題ありません。文字コードの問題が原因かもしれないと考えています。
こんにちは。
ActivePerlの参考書を使っています。
会社ではSolarisにApacheがあるので、普段から使用しているWindowsで
参考書のコードを手打ちで作り、それを(tera termで)viエディター上に貼り付けして、ファイルを
作成実行しているのですが、手打ちしたコードと参考書のコードでは、
同じ内容&シンタックスエラーもでないのに、ブラウザで確認しようとすると
サーバーエラー(500)が出てしまいます。
それで、参考書に添付されているサンプルコードを(内容自体はいじりません)、
上記の方法でUnix機にアップして実行すると上手く表示されます。
diffコマンドで比較してもカンマの位置とか、見やすい様にスペースを入れている、
コメントの描写が異なっているだけなのですが、どうしてこんな現象があるのでしょう??
文字コードが原因だと睨んでいるのですが、このような現象はありえますでしょうか??
以下に手打ちしたコードを載せて置きます。
(アクセスカウンターを表示)
-----------------------------------------------
#!/usr/local/bin/perl
$COUNTFILE='./count.dat';
open(FILE, "+<$COUNTFILE") or die("Err");
eval{ flock(FILE, 2); };
$cnt = <FILE>;
seek(FILE,0,0);
print FILE ++$cnt;
close(FILE);
print <<EOF;
Content-type: text/html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head><title>あくせすかうんと</title></head>
<body>
<p>あなたは……$cnt番目の訪問者です。</p>
</body></html>
EOF
------------------------------------------------
よろしくお願いします。
お礼
deagleさん回答ありがとうございます。 確かにその通りでした。あっという間にできました。 ヘッダのことなって全然理解してないままでしたので。。 調べ方の範囲を違った視点で見ようと思います。