アプリ版:「スタンプのみでお礼する」機能のリリースについて

サクラのレンタルサーバーを借りました。
早速CGIを試そうと思ったのですが、原因不明のInternal Server Errorが出ます。
cgi-binはいらないとのことですので、wwwにそのまま入れました。
index.htmlも同じ場所にありそれは出ますのでパス間違いではないです。
またパーミッションも777にしてみましたが駄目です。
#!/usr/local/bin/perl
print "Content-Type: text/html\n";
print "\n";
print "<html>";
print "<body>";
print "abc";
print "</body>";
print "</html>";

こんな感じで、TELNETでログインして実行も出来ます。
bash-2.05b$ ./index.cgi
Content-Type: text/html

<html><body>abc</body></html>bash-2.05b$

いろいろ調べたのですが
◆パーミッション→OK
◆TELNETで実行してみる→OK
◆perlへのパスは?→/usr/local/bin と /usr/bin どちらでもいいそうです。験しに変えましたが状況変わらず。


何か気が付いたことがあれば教えてください

A 回答 (2件)

SAKURAサーバー利用者です。



私のサーバーの方で既に動いているCGIファイルを確認した所、パーミッションは「755」になっていました。

試しにパーミッションを「777」に変更してみたら、Internal Server Errorと表示されちゃいました。

パーミッションは「755」で試してみましたか?

この回答への補足

パーミッションがゆるすぎると駄目・・・
そんなことってあるのですね。
試してみます。
ありがとうございます

補足日時:2006/05/21 00:35
    • good
    • 0
この回答へのお礼

助かりました!!!!
755にしたら動きました!!!

ありがとうございます。

自分だけだったら、いつまでたってもわからなかったと思います!

お礼日時:2006/05/21 00:42

まず基本的に.cgiとCGIを置くディレクトリのパーミッションは705にしてください(まあ755でもいいっちゃいいが)


これでほとんどのUNIXサーバーはOKです。(後述のSuexec有りでも無しでも)

SAKURAインターネットのサーバーはかなり昔から
SUEXECを使っていますので .cgiファイルとそのディレクトリに対してオザーやグループに書き込み権限を与えると
SUEXECのセキュリティチェックに引っかかって 結果Internal Server Errorになります

自分でサーバーを構築する場合だとSuexecによるエラーはほかにもありますがね
http://oshiete1.goo.ne.jp/kotaeru.php3?q=2154099
のとか ユーザーtarou の領域に 他のユーザー(jirouとかrootとか)が所有者になるcgiは動かないとか、、、

この回答への補足

理由まで教えていただいて大変ありがたいです。
きっと、自分だけでは解決できなかったと思います。

始め駄目だったのですが、
格納ディレクトリも777にしていたのが駄目な原因でした。
ディレクトリも755にしないと駄目なんですね。

補足日時:2006/05/21 00:43
    • good
    • 0
この回答へのお礼

なるほど、納得です。
たくさんの人が共用するサーバーだから、
otherやgroupに権限を与えないようにしましょう、ってことですね!
安易に777にしてしまいました。
テストだから良いやって、いつも癖に成っていました。
勉強になります。
早速やってみます!

お礼日時:2006/05/21 00:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!