No.2ベストアンサー
- 回答日時:
→
http://oshiete.goo.ne.jp/qa/7030066.html こちらのつづきでしょうか。それならば、CRにするのは解決にはなりません。
おそらく、最近の事情を知らずに「Macではテキストの改行はCR」だと思っているのでしょう。
たしかにOS9まではCRを使っていましたが、OSXではUnixがベースになっており、改行もUnixと同じLFを使っています。
Web共有で使われれうApacheも、CGIを実行するのに使うperlも、LFを改行とみなします。
実際、手許で実験したところ、
CRLF,CR→Internal Error 500
LF → 「ちわ!世界。」と表示
でした。
原因は他にも考えられます。
> perl -c /Library/Webserver/CGI-Executables/test.cgi
文法が正しくてもプログラムとして間違っている、ということはよくあることです。
-cをはずして実行したら、ちゃんとターミナル上に表示されるでしょうか?
CGIでは、その実行ファイルを単体で実行しようとします。perlを探すのは、シェルの役目です。つまり、シェルからコマンドとして実行できる必要があります。ターミナルで
/Library/Webserver/CGI-Executables/test.cgi
とだけ入力したらどうなるでしょうか?
No.1
- 回答日時:
テキストエディット.appには無いようです。
CRに対応したソフト(mi等)を使うのが確実だと思います。
ところで、なぜCRなのでしょう?
この回答への補足
回答ありがとうございます。
長文になりますが、ご指導よろしくお願いいたします。
なぜCRかと申しますと、下記のような質問をしたところ、
返答が、
「エラーの内容はhttpのレスポンスヘッダより前に何かが出力されてしまったため発生しています。
大抵は先頭行の改行コードが問題を引き起こしていますので、環境がMACなら改行コードをCRLFやLFではなく、CRだけにしてください。」
だった為です。
質問内容
CGI プログラムを起動させると、
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.・・・・・
となってしまい、CGIがブラウザに表示されません。
どなたか解決法をご存知の方、教えてください。
(使用PCは、MacOSX(10.6.8)です。)
行った手順
1. Apacheの動作確認
[Machintosh HD]→[アプリケーション]→[システム環境設定] → 共有・アイコン → 「Web 共有」にチェックを入れる。
2. test.cgiを設置
設置場所
[Machintosh HD]→[ライブラリ]→[WebServer] → 「CGI-Executables」にtest.cgiを設置
test.cgiは下記
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "<HTML>\n";
print "<HEAD><TITLE>CGI TEST</TITLE></HEAD>\n";
print "<BODY>ちわ!世界。</BODY>\n";
print "</HTML>\n";
__END__
3.ターミナルでCGIプログラムに実行権をつける
chmod 755 /Library/Webserver/CGI-Executables/test.cgi
4.ブラウザに「http://localhost/cgi-bin/test.cgi」を入力
最初に表示した「Internal Server Error」になってしまう。
ちなみに・・・
1. ファイルに実行権限が付いているか確認したところ、下記のようになりました。
ls -la /Library/WebServer/CGI-Executables/test.cgi
-rwxr-xr-x@ 1 taka staff 188
2. Syntaxを確認したところ、下記のようになりました。
perl -c /Library/Webserver/CGI-Executables/test.cgi
/Library/Webserver/CGI-Executables/test.cgi syntax OK
3. ターミナルにて、which perlを確認したところ、下記のようにまりました。
/usr/bin/perl
4. tail -f /private/var/log/apache2/error_logにてApacheのエラーログを確認をしたところ、下記のようになりました。
[Thu Sep 22 22:31:17 2011] [error] [client 127.0.0.1] (8)Exec format error: exec of '/Library/WebServer/CGI-Executables/test.cgi' failed
[Thu Sep 22 22:31:17 2011] [error] [client 127.0.0.1] Premature end of script headers: test.cgi
エラーログの見方、解決法もわからない初心者です。
どなたか解決法をご存知のかた、教えてください。
どうぞよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) 改行コードについて 4 2022/08/13 14:20
- iCloud iCloudのデータがMacbookのストレージをいっぱいにしてしまう 2 2022/08/31 22:34
- ホームページ作成・プログラミング ホームページの内容変更を無料で(自分で)したいので方法を教えてください 3 2022/07/14 13:32
- Access(アクセス) ExcelのVBAコードについて教えてください。 4 2023/01/20 09:44
- Android(アンドロイド) auのAndroid端末のSIMカードがロックされてしまいました。 6 2022/08/22 20:31
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
- iOS PCを借りれる所はありますか? スマホでPC用ソフトを購入したけど、 コード入れても使えなくて よく 2 2023/06/24 01:44
- Excel(エクセル) エクセルのマクロについて教えてください。 7 2023/01/13 13:33
- ドライブ・ストレージ 古い外付けHDDから新品外付けHDDへのデータ移行方法 (Mac) 2 2022/12/11 02:01
- docomo(ドコモ) dアカウントの携帯電話番号が登録できない。ワンタイムコードがSMSに届かない。 2 2023/07/09 23:07
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
連想するもの教えてください
-
Excel VBA メール作成について ...
-
CGIを勉強しています。¥n(改...
-
改行コードがそのまま表示され...
-
10Mバイトて文字数に すると何...
-
ListView重複データ削除
-
DataGridViewの特定列に入力さ...
-
VB6で漢字の1バイト目か2バイト...
-
VBAでプロシージャ間のデータを...
-
CGIメールフォームのメールが文...
-
COBOLのCOMP形式について
-
いつどこゲームのようなテキス...
-
エクセルシート名の制限を変更...
-
【VB2005】テキストボックス内...
-
マクロ登録したピボットが重い...
-
stable diffusionのエラー
-
linuxのシェルでファイル名に先...
-
GETメソッドとPOSTメソ...
-
64bit対応
-
SQLで1バイト、2バイト混在...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBA メール作成について ...
-
Rstudioによるテキストマイニン...
-
Line Inputにて改行があっても...
-
CGIを勉強しています。¥n(改...
-
改行コードがそのまま表示され...
-
テキストボックスに入力された...
-
連想するもの教えてください
-
perlで、[ \\r\\n , \\n ]の意...
-
ホームページビルダーで行間を...
-
エクセルで「改行コード」を「...
-
【HELP!!】Excelから保存したtx...
-
テキストエリア内でタグ<BR>を...
-
一行掲示板を改行が入る掲示板...
-
MACの改行コード変更について教...
-
Excelで、HTMLタグだけを削除す...
-
改行コードの判定に関して
-
CGIフォーム無改行で途中から文...
-
KENT-WEBのClipMailでのチェッ...
-
if文中で@***(配列変数)って...
-
number 改行が追加できない
おすすめ情報