• ベストアンサー
  • 暇なときにでも

CGIの設置ができません。

Apacheのhttpd.confを設定して、aska.cgiという掲示板を動かそうとしているのですが、うまく動きません。 色々調べた結果、httpd.conf内のOptionというところにExec CGIを追記すればいいとのことだったので、 <Directory "C:/Program Files/Apache Group/Apache2/htdocs"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> としましたが、 Options ExecCGI is off in this directory: C:/Program Files/Apache Group/Apache2/htdocs/aska/aska.cgi, referer: http://localhost/aska/ とerror.logには表示されてしまいます。 ちなみにaska.cgiは C:/Program Files/Apache Group/Apache2/htdocs/aska/ に入っています。 よろしくお願いします

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数107
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • zitaku
  • ベストアンサー率100% (1/1)

こんにちわ まず、http://localhost/のアドレスでindex.htmlの ページが見れますか。確認してください。 askaのホルダーを作ってください。そこにファイルを 入れてください。そうすると、http://localhost/aska/aska.cgiのURLになります。 それと、ご存知でしょうが、ActivePerl 5.8.7を インストールずみですよね。 上記の確認をしてください。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ご回答ありがとうございます! ActivePerlの存在を知りませんでした。インストールし、Perlのパスを設定しなおすと掲示板が表示されました。 ありがとうございました。 まだまだ知識不足でした。

関連するQ&A

  • CGIの実行

    CGIを実行しようとしたら、下記のようなメッセージが出てしまいました。このDirectoryではダメって事なのでしょうか。 Options ExecCGI is off in this directory: C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/ruby.cgi CGIってCgi-Binの下って決まっているのでしょうか? どなたかご存知であれば教えてください。

    • 締切済み
    • CGI
  • Apacheでcgiを動かす場合のファイルの場所は‥。

    いつもお世話になってます。  今、Apache2を導入して、サーバを構築しているのですが、cgiファイルをおく場所で困っています。  デフォルトでApacheをインストールすると、*:\Program Files\apach group\apach2\cgi-bin 配下に、cgiファイルをおくように設定することになりますよね。  そこにおけばcgiは動きましたが、出来れば、 任意の場所にcgiファイルをおいて動かしたいと思いました。 httpd.conf内の ScriptAlias /cgi-bin/ "E:/Program Files/Apache Group/Apache2/cgi-bin" や、 <Directory "E:/Program Files/Apache Group/Apache2/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all の部分を任意の場所に変えたりするのですが、それだとcgiファイルはただ単にテキストで表示されてしまうだけでした。  あきらめるしかないのでしょうか。  初歩的な質問かもしれませんが、FAQ等を探しても見つからなかったので質問させて頂きました。 どなたかご教授下さい。 よろしくお願い致します。

    • ベストアンサー
    • CGI
  • CGIが動きません!!

    CGIが動きません。htmlを表示できる状態です。 エラーログには「 couldn't spawn child process: g:/program files/apache group/apache/cgi-bin/hello.cgi」と表示されています。 どうしたら良いのでしょうか? windouw NT 4.0 + Apache version 1.3.19 + Active Perl version 5.005_03 です。 perlの構文チェックは問題なしです。 httpd.confの設定は下記のようにしました。 1.AddHandler cgi-script .cgi を追加。 2.オプションの設定にExecCGIを追加。 <Directory "G:/Program Files/Apache Group/Apache/cgi-bin"> AllowOverride None # Options None Options ExecCGI Order allow,deny Allow from all </Directory>

  • CGIのアクセス制限について

    環境は windowsXPHome SP3 / Apache2.2 / ActivePerl5 / (MySQLを使う予定) です。 htdocs\index.html htdocs\ddd\aaa.cgi htdocs\ddd\bbb.cgi のようなディレクトリ構成で、httpd.confは、htdocs以下を公開する設定になっていて <Directory "D:\Program Files\Apache Software Foundation\Apache2.2\htdocs\ddd"> AddHandler cgi-script .cgi Options +ExecCGI </Directory> を指定しました。 これを自宅サーバーとして公開する場合、外部からはindex.htmlにアクセスできるようにして、 aaa.cgiやbbb.cgiはindex.htmlからリンクやformのactionから呼び出されてからしか実行できない (直接cgiのurlを指定して開けない)ようにするにはどうすればいいでしょうか? よろしくお願いします。

    • ベストアンサー
    • CGI
  • apacheのScriptAliasの記述について

    どなたか,ご教授いただければ幸いです。 WindowsXp Proでapacheを動かしています。次の設定で,cgiはうまく動作していました。 --- <IfModule alias_module> ScriptAlias /cgi-bin/ \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\" </IfModule> <Directory \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin\"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler image/gif .gif AddHandler image/jpeg .jpg </Directory> --- これに, http://www.miloweb.net/win/server/apache.html を参考にして,各ユーザーフォルダでcgiが実行できるようにしようと,次のようにしました。 --- <IfModule alias_module> ScriptAlias /cgi-bin/ \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\" ScriptAlias /cgi/ \"C:/www/users/*/cgi/\" </IfModule> <Directory \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin\"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler image/gif .gif AddHandler image/jpeg .jpg </Directory> <IfModule mod_userdir.c> UserDir \"C:/www/users/*/\" </IfModule> <Directory \"C:/www/users/*/cgi/\"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler image/gif .gif AddHandler image/jpeg .jp </Directory> --- その結果, http://localhost/~user/ としてuserのホームページにアクセスできるようになったのですが, cgiについては, http://localhost/~user/cgi/・・・ としてもアクセスできません。どなたか原因をご教授いただけないでしょうか。 ScriptAlias /cgi-bin/ \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\" ScriptAlias /cgi/ \"C:/www/users/*/cgi/\" の行を入れ替えると,\"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\"においてあるcgiが実行できなくなります。ScriptAliasは1行目しか有効でないようにも見えるのですが,上に書いた参考URLではできているようなので,戸惑っています。

  • cgi-bin配下のファイルに読込許可を!

    最近、Apache2を使い始めたばかりで設定がよくわかりません。 Apacheの設定ファイルで、httpd.confというファイルがありますが、その中で、 ScriptAlias /cgi-bin/ "C:/Apache2/htdocs/cgi-bin/" <Directory "C:/Apache2/htdocs/cgi-bin"> AllowOverride None Options All Order allow,deny Allow from all </Directory> と記述して"C:/Apache2/htdocs/cgi-bin"配下にあるファイルに CGIが動作するように許可しました。 しかし、これだと逆に"C:/Apache2/htdocs/cgi-bin"配下にある HTMLファイル(.htm等)が読み込めなくなってしまいます。 cgi-bin配下にあるhtmlファイルも表示できるように許可を 出したいのですが、どのように設定すればよろしいのでしょうか?

  • CGIと permissionの問題

    win2000のos上で,ApacheでCGIをローカルで試していますが, 下記のようなerrが出ます。 Forbidden You don't have permission to access /namazu.cgi on this server. --------------------------------------------------------------------------------Apache/1.3.19 Server at 127.0.0.1 Port 80 logを見ると,下記です。 [Sun Sep 16 17:22:04 2001] [error] [client 127.0.0.1] Options ExecCGI is off in this directory: c:/~nakai/namazu.cgi このdirの .htaccess は下記です。 AllowOverride Options Options +ExecCGI 一方,Apache の httpd.conf  #ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache/cgi-bin/" ScriptAlias /cgi-bin/ "C:/~nakai/cgi-bin/" # # "C:/Program Files/Apache Group/Apache/cgi-bin" should be changed to whatever your ScriptAliased # CGI directory exists, if you have that configured. # #<Directory "C:/Program Files/Apache Group/Apache/cgi-bin"> <Directory "C:/~nakai/cgi-bin/"> AllowOverride None Options None # Options ExecCGI Order allow,deny Allow from all SetHandler cgi-script </Directory> どのあたりに問題点かあるのでしょうか?

  • apacheのDirectory指示子でわからない

    Windows2000pro,apache2.0.55です。 Directory指示子の使い方がいまいちわかりません。 あるディレクトリ(たとえばtest)にForceType指示子で強制的にMIMEを設定したいのですが、 <Directory "C:Program Files/Apache Group/Apache2/htdocs/test"> ForceType image/gif </Directory> と直接絶対パスで指定するとうまくいくのですが、 <Directory /htdocs/test> ForceType image/gif </Directory> と/からの相対パスにするとうまくいかないのです。 手元の解説書によると、Directory指示子での/とはServerRoot指示子で指定されたディレクトリを指す、とあります。 ServerRoot指示子の値は "C:Program Files/Apache Group/Apache2" となっています。 ということは <Directory /htdocs/test> という指定で <Directory "C:Program Files/Apache Group/Apache2/htdocs/test"> と同じ意味になるはずなのですが、そうはなっていないのです。 どこがまずいのでしょうか? よろしくお願いいたします。

  • CGIを開けない。。。

    apacheとphpを設定して動作確認したあとに、cgiも操作したいので、Active Perlというものをインストールしてみました。 phpは、http://localhost/で「C:/Program Files/Apache Software Foundation/Apache2.2/htdocs」のフォルダーを参照できるのですが、cgiを開くときには、どこのフォルダーに格納し、URLをどうすれば宜しいのでしょうか?(因みにcgi-binとhtdocsに格納し、http://localhost/***.cgiで試したのですが駄目でした。) Active Perlインストール後に変更した場所 ScriptAlias /cgi-bin/ "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/" <Directory "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin"> AddHandler cgi-script .cgi .pl なお、perlの設定には、こちらhttp://www.jisaba.net/xp/actpeal/04.htmのサイトを参考にしました。 環境はWindowsVistaです。 どなたか宜しくお願い致します。

    • ベストアンサー
    • Perl
  • htmlにCGIプログラムの埋め方。

    window2000+apache2+perl5の環境ですが。 ディレクトリの構成: c:\Program Files\Apache Group\apache2 apache2にcgi-bin とhtdocsの二つのディレクトリがあり、 cgi-binにwforum.cgiというCGIプログラムがあるとします。 \htdocs\index.htmlを次のように作りました: ------------------------------------ <html> <head> <title> test page </title> </head> <body> ここに”BBS 行き”というハイパーテキスト をクリックしたら、wforum.cgiを実行してくれる </body> </html> -------------------------------------- 上のようなプログラムをどう作れますか。できれば、相対 パスを使いたいです。

    • ベストアンサー
    • CGI