人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

■ CGIがエラーで困りました。

サーバーOSをFedora core3.0にて
Apacheを2にしていますが、test.cgiは動きましたが、一般で配布されているCGIが動かず
どうすれば良いものかと・・悩んでいます。シンボリックリンクも変えています。
何かよい方法がありましたら教えてください。

●質問者: wanwan35
●カテゴリ:コンピュータ 趣味・スポーツ
✍キーワード:Apache CGI Fedora Core OS test
○ 状態 :終了
└ 回答数 : 6/6件

▽最新の回答へ

1 ● erohondaio
●15ポイント

http://www.hatena.ne.jp/1122460912#

人力検索はてな - ■ CGIがエラーで困りました。 サーバーOSをFedora core3.0にて Apacheを2にしていますが、test.cgiは動きましたが、一般で配布されているCGIが動かず どうすれば良い..

エラーの内容がわからなければ答えようがありません。

どのようなCGIなのでしょうか?

ブラウザだけで分からない場合は、apacheのエラーログを確認する等して手がかりを探してください。


2 ● ito-yu
●15ポイント

http://www.futomi.com/lecture/macosx/cgi.html

Max OS X で Apache サーバを立てよう - CGI の検証 - futomi's CGI Cafe

cgiファイル自体と、cgiファイルを置くディレクトリのパーミッションはチェック済みかと思いますが、意外と盲点なのが上位ディレクトリのパーミッションです。試しに上位ディレクトリのパーミッションを777にして動作すれば、これが原因です。


ファイルの所有者も、大丈夫ですか?


3 ● ymlab
●15ポイント

http://www7.big.or.jp/~jawa/tips/perlpath.html

CGI-StaTion -Perlのパスってなんやねん-

えっと・・。

エラーとは、どんなエラーがでたんでしょう?

Apacheのバージョンは、2.何ですか?

test.cgiとは、どんなプログラムなのですか?

一般で配布されているcgiはどんなプログラムなのですか?シンボリックリンクをどう変えたのですか?

何言語でcgiを書いたのですか?


少し、与えられた情報量が少ないので、難しいですが、自作で作ったcgiは動き、他の人が書いたcgiは動かないと考えます。あと、perlで書いたものとします。


・cgiのパスは通っていますか?

プログラムの1行目

#!/usr/local/bin/perl

だったり、

#!/usr/bin/perl

だったり、まぁどこにでもできるんですが、waewan35さんの環境でperlはどこにおいてあるかによって、変わってきます。

コンソール上から、

which perl

とかしてみてください。そこのパスに設定すればよいです。


・パーミッションの設定。

実行権限は与えられていますか?

chmod 755 [file]

とかしてみてください。


・perlのバージョンとか、別のライブラリとかを、配布されているcgiは読んでいませんか?


Fedora core3.0ならば、結構新しいので、大丈夫だとは思いますが、念のため。


別ライブラリを読んでいるのであれば、

use ○○;

とか、

requireとかプログラムのなかでしているはずです。


4 ● s
●15ポイント

http://www.core-p.com/cgi-search/explain/explain4.html

CGI-Search 初心者のCGI設置

御自分でサーバをお立てになっているのであれば、エラーログを御覧になってはいかがでしょうか。

エラーの意味がわからなくても、メッセージを検索するだけでけっこう情報がでてきます。


ちなみに、上記URLは初心者の間違いやすい部分を書いてくれてあります。御参考まで。


5 ● bonobon
●15ポイント

http://www.atmarkit.co.jp/flinux/rensai/apache13/apache13a.html

Apacheのログを活用しよう(1/2)

いわずもがなのことでしたら申し訳ありません。私が思いつく限りのCGIでありがちなミスですと、


1.スクリプトのパーミッション設定がされていない(実行権限がついていない)


2.ScriptAliasの通っていないディレクトリにファイルが配置されている。


等があります。


基本的に、「一般で配布されているCGIが動かない」時にはapacheのエラーログにどうして実行できないかのログが落ちているはずなので、そのメッセージを見れば(意味不明であればGoogle検索に投げてみるとか)大体原因は特定できるかと思います。


お役に立てなかったら申し訳ありません、頑張ってください。


1-5件表示/6件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ