こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

掲示板やメールフォームの設定で・・

今掲示板とメールフォームの作成をしています。そこであるサイトを参考にして設定の方をやっていきましたがブラウザの方でテストをしてみると、
Internal Server Errorになってしまいました。
他のpcから見るとうまく表示されているのに一部のpcだけエラーになってしまいます。

ログを見てみるとcgiを入れておいたディレクトリにファイルがありませんと出ていました。

友達に聞いてみたところperlのパーミッションの指定を変えなくてはいけないかもと言っていて調べてみたのですがいまいちやり方がわかりませんでした。

LINUX&pcを使い始めたばかりなので教えていただいたことについても調べてみようと思うのですがよろしければ初心者でも解り易いようにお願いいたします。


みなさまの御協力をお願いします。

投稿日時 - 2004-01-05 16:50:18

QNo.742899

暇なときに回答ください

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

>cgiのファイルとかにperlのある場所を書きますよね?

一般にPerlパスと呼ばれるものです。
(より正式にはshebangと呼びますが)

これは単純にPerl本体のフルパスを書くだけで、
パーミッションの設定とは関係ありませんよ(^^;

一般的に多いのは、
#!/usr/local/bin/perl
#!/usr/bin/perl
のふたつです。

変更の方法は、
CGIのファイルをテキストエディタで開いて、
一行目を書き直すだけです。


もし方法等がわからなければ、
無料配布されているCGI等の設置方法を
自分なりにためされてみるとよいかと思います。

投稿日時 - 2004-01-05 22:29:17

補足

エラー内容を詳しく載せると
NO such file or directory: exec of /public_html/postmail/postmail.cgi failed
[client 127.0.0.1] Premature end of script headers: /public_html/postmail/postmail.cgi
[client 127.0.0.1] script not found or unable to stat: /public_html/postmail/postmail
と出ています

投稿日時 - 2004-01-06 15:34:06

お礼

やっぱそうでしたか・・・
自分も調べてみた感じそんなのあるのかな?って思って色々と検索かけてみたのですが、そのようなことは書いて無かったです。(汗)

でもperlのパスは/usr/bin/perlであってます。

もしよろしければなんでエラーログに出ていた指定されたディレクトリに(CGI)ファイルがありませんと出ていた原因ってわかりますか?

投稿日時 - 2004-01-06 14:00:39

ANo.1

パーミッションの設定ですが、以下URLに載っています。
プログラミングの中に載っていませんでしたか?
間違って777にしてしまうと書き込み実行になってしまうので気をつけてください。
ブロバイダやCGIを提供している所によって違いますので、確認されてみてはどうでしょうか?

参考URL:http://www7.big.or.jp/~jawa/tips/access.html

投稿日時 - 2004-01-05 17:15:01

お礼

スミマセン!

書き方が悪かったです。

cgiのファイルとかにperlのある場所を書きますよね?

!/usr/bin/perl

って感じのやつです。どうやらここのパーミッションを変えるらしいのですが、いまいちよくわかんないですねぇ(汗
あと、ファイルが無いというエラーが出たのも気になるし・・

投稿日時 - 2004-01-05 17:27:00

あなたにオススメの質問