• ベストアンサー

Apacheでのcgi使用についてなんですが・・・

windowsPCにApacheを組み込んでWWWサーバーとして使用していますが一つ問題が発生したのでどうかお力を分けてくださらないでしょうか? その問題というのは、Apacheで掲示板のcgiが使えないのです。httpd.confをcgiが使えるように書き換えましたし、別のAN HTTPDというサーバーソフトではちゃんと掲示板として機能します。cgi-binの中はcgiが使えるように設定したのですがやはりcgi-bin/bbs/bbs.cgiとするとCGIは動かなくなるのでしょうか?

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

  • ベストアンサー
  • zem
  • ベストアンサー率70% (51/72)
回答No.1

 こんにちは、CGI が実行できないとき、ブラウザ上はどのような状況でしょうか。たとえば何かエラーが表示されますか?それとも CGI の中身が表示されてしまいますか?  もう1点、CGI をひょじ使用としたときに apache の error_log には何かエラーが出ていますでしょうか。そのあたりの情報を頂ければ解決できるかもしれません。。  CGI が使えるようにというのは「AddHandler cgi-script .cgi」の行を有効にすることと、<Directory 場所> で指定されているフォルダで Options に ExecCGI の指定がないといけません。併せて確認されることをお勧めいたします。

sanber
質問者

お礼

申し訳ありません。解決いたしました。

関連するQ&A

  • apache でバイナリのCGIを動かすには

    apache でバイナリのCGIを動かすにはどうすればよいのでしょうか? (なお、プログラム自体に問題は決してありません。『HTTPD』を使うと問題なく動作します) OS:WIN98 C++バイナリのCGIを呼び出すと下記エラーとなります。 Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please .... the error. More ... log. - Apache/1.3.12 Server at http://127.0.0.2/ Port 80 最終アクセスログ 127.0.0.1 - - [12/Mar/2001:23:20:27 +0900] "GET /ab.cgi HTTP/1.1" 500 610 最終エラーログ [Mon Mar 12 23:20:25 2001] [error] [client 127.0.0.1] Premature end of script headers: e:/www.homepage/kokucho81/ab.cgi apache の httpd.conf と httpd.conf.default との比較 ** httpd.conf ServerName http://127.0.0.2/ ** httpd.conf.default #ServerName new.host.name ** httpd.conf DocumentRoot "E:/WWW.HOMEPAGE/KOKUCHO81" ** httpd.conf.default DocumentRoot "C:/Apache/htdocs" ** httpd.conf <Directory /> Options FollowSymLinks ExecCGI AllowOverride None ** httpd.conf.default <Directory /> Options FollowSymLinks AllowOverride None ** httpd.conf <Directory "E:/WWW.HOMEPAGE/KOKUCHO81"> ** httpd.conf.default <Directory "C:/Apache/htdocs"> ** httpd.conf Options Indexes FollowSymLinks ExecCGI ** httpd.conf.default Options Indexes FollowSymLinks MultiViews ** httpd.conf AddHandler cgi-script .cgi ** httpd.conf.default #AddHandler cgi-script .cgi そもそも、設定が足りてないんでしょうか? apacheを良く使う方、よろしくお願いします。m(_ _)m

  • apacheのCGI設定

     pc9821にFreeBSD(98)をいれapache1.3を起動させています。cgiはlight.cgiというソフトをつかっています。なかなかcgiがうまくいきません。参考ページには public_html / index.html (トップページ) | +-- bbs / light.cgi [755] | admin.cgi [755] ・・・・(省略) +-- lock [777] / | +-- past [777] / 0001.cgi [666] とかかれていますが、実際に私のサーバーにはpublic_htmlというフォルダは存在していなくて /usr/local/www/cgi-binにbbsというフォルダをつくり あとは上のようにしています。またindex.htmlは/usr/local/www/dataのなかにいれて表示してWebサーバーとしてはたらいています。またapacheの/usr/local/etc/apacheのhttpd.confは 関係ありそうな行だけあげると ServerRoot "/usr/local" DocumentRoot "/usr/local/www/cgi-bin" <Directory "/usr/local/www/cgi-bin/bbs"> Options Indexes FollowSymLinks MultiViews <location "/cgi-bin/"> Options ExecCGI AllowOverride AuthConfig Limit Order allow ,deny Allow from all </Location> <IfModule mod_mime.c> TypesConfig /usr/local/etc/apache/mime.types ADDHandler cgi-script .cgi </IfModule> ScriptAlias /cgi-bin/ "/usr/local/www/cgi-bin/" <Directory "/usr/local/www/cgi-bin/bbs"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> AddHandler cgi-script .cgi どこがおかしいのかおしえていただけないでしょうか?

    • ベストアンサー
    • CGI
  • LinuxのapacheでCGIが動かない

    RedHatLinux7でイントラネットでWebサーバーを構築しました(apache)で、CGIを動かしたいのですが、動きません。あるサイトで「httpd.conf の AddHandler cgi-script .cgiを生かせばいい」となっていたのでそうしましたが、まだ動きません。あと何を設定すれば良いのですか?(CGIのパーミッションはちゃんとしています。)httpd.confにCGIの記述が他にもありましたが意味がわからずそのままにしています。

  • redhat 7.0 でApacheでCGI

    今、ApacheでWEBサーバーつくったのはいいでんすが、なぜかどのCGIも動きません。Internal Server Eroor がでます。 おそらくhttpd.confの設定だろうと思うのですが、どうやってもうまくいきません。 ちなみにCGIの中身はちゃんとチェック済みです(フリーのCGIスクリプトを3っつくらいためしました)あと、パーミッション設定もチェック済みで、テキストをただ表示させるだけのCGIすら動きません。 よければどなたかhttpd.confの中身のせときます。 どなたかアドバイスと、くわしくhttpd.confの設定がのってるサイトを教えていただけないでしょうか? あと、できればWebminでの設定方法を知っている方おしえていただけないでしょうか? http://ks-pro.dns2go.com/httpd.conf.txt

  • apacheでCGIを動かす

    apacheでCGIを動かそうと思っていますが、どうしても出来ません。 環境は以下の通りです。 apache:1.3.35 OS:Windows2000 httpd.confの設定は 1.ScriptAlias /cgi-bin/ の行をコメントアウト 2.Alias /cgi-bin/ "E:/hoge/cgi-bin/"に変更してDirectoryタグを追加 3.AddHandler cgi-script .exeを追加 以上の3点をしましたが、新しく設定したディレクトリのcgiは動作しませんでした。 apacheのmodulesディレクトリの中にmod_alias.soというファイルが有りませんがそれは関係有るのでしょうか? また、apacheとtomcatの連携ということを以前行ったのですが、動かない事と関係あるのでしょうか? 文字数の関係で見づらい説明になっているかと思いますがよろしくお願い致します。

  • Apacheのcgi-bin

    ApacheでCGIを実行するためのフォルダをcgi-binとしたのですがアドレスがなんかややこしくて困っております。 その際、http://locallhost/cgi-bin/bbs/bbs.cgiとアドレスがなるのですが、これをhttp://locallhost/bbs/bbs.cgiと変えることは可能でしょうか? また、KENT-WEBさんがご提供されていらっしゃるpostmailというCGIをApacheで表示しようとするとエラーが出てしまいます。cgiは動くのですが、中に同梱されているhtmlは表示してくれません。これは、cgi-binの外にhtmlを出さなければいけないのでしょうか?よろしくお願いします。

  • apacheでcgi

    AddHandler cgi-script .cgiを有効にして.htaccess の中にOptions +ExecCGIAllを記述してhttpd.confのowOverride Options としてcgiを実行しようとしたら下記エラーになりました。 [Thu Nov 15 11:16:54 2001] [error] (13)許可がありません: exec of /home/jin/WWW/cgi-bin/tslbbs.cgi failed [Thu Nov 15 11:16:54 2001] [error] [client 192.168.0.9] Premature end of script headers: /home/jin/WWW/cgi-bin/tslbbs.cgi それで、 #AddHandler cgi-script .cgi として、 <Directory /home/*/WWW> Options ExecCGI </Directory> にしたら cgiのソースが見えてしまいます。 cgiのPermissionsは755になっております。 ScriptAliasで/cgi-bin/ /home/*/WWW/cgi-bin/を記述してOptions ExecCGIにしてもソースが見えてしまいます。 cgiを実行させるのにはどうすればいいのでしょうか?? (以前Linuxを良くわからないときに(今でも解っていませんが・・)同じような質問をここに挙げてその時は単純な自分の間違いで動かなかったのですが単純なソースのミスでした。それで今度はLinuxをインストールをしなおしたら動かなくなったのです。 http://apachetoday.com/news_story.php3?ltsn=2000-06-05-001-10-NW-LF-SW 等覗いてそれをやっても動かないのです。 多分単純なことなのかもしれませんが行き詰まって困っております。 昨日の質問でユーザーのHTMLが見れないのはURLの指定で最後に'/'をつければ問題なく見れました。今はイントラネットでLinuxを動かしているのですが、実際のインターネットでは最後の/は入れたり入れなかったりでも問題なく見れるのですが、正しくは最後に/を入れるみたいですね。)

  • Apache

    Windows2000proとApache2を使用してWWWサーバーを構築しております。問題が生じてしまいましたのでどうかお力を貸していただけないでしょうか? 問題とは、http://***/cgi-bin/bbs/bbs.cgiとcgiへの道が表示されているのを出来るだけ短くしたいのですが知識不足で出来ません。 また、KENT WEB様のcgiプログラム「postmail」使用させていただいておるのですがどうも上手く実行してくれてないみたいです。cgiだけ表示され、htmlフォイルは表示されないのです。前回質問させていただいたのですが、やはりcgi-binの中に一緒にHTMLファイルを置き、HTMLファイルを参照することは不可能なんでしょうか? 前回御質問させていただき、せっかく良いご回答も頂きましたが私の知識不足で書かれている内容が理解できませんでした。どなたかお教え下さい。よろしくお願いします。参考までに、前回のリンクをお知らせさせていただきます。http://oshiete1.goo.ne.jp/kotaeru.php3?q=1492073

  • [Apache]/cgi-bin/以外でCGIを使いたい

    WindowsでCGIのテストをしているのですが、パスが例えば http://localhost/cgi-bin/test.cgi というようにすればcgiを実行することができるのですが、 http://localhost/test.cgi というようにして実行するには、どのように設定すればいいのでしょうか? たぶんhttpd.confの設定だと思うのですが・・。 ちなみに、インストールされているApacheのバージョンはわかりません。というのも、LaVieを買ったら、すでに C:\Program Files\Apache Group(以下) にインストールされていて、ヴァージョン情報がどこに書いてあるかわかりません。 それでもアドバイス頂けたらと思います。 また、これ(cgi-binを省略してアクセスする方法)について書かれているサイトもありましたらよろしくお願いします。

  • apacheのrewriteについて

    apacheのrewriteについて 現在Google検索でうちの各ページが独自ドメインではなくレンタルサーバ会社の仮ドメインが表示されていて困ってます。 しかもhttps://~~~になっており、証明書のエラーが出て1回では接続できない状態です。 原因はhttps://www.hogehoge.co.jp/cgi-bin/aaa.cgiにcgi-binではないフォルダにある画像ファイルをリンクさせたからのようです。現在はcgi-binフォルダに画像を入れてリンクさせています。 取り急ぎの対応としてapacheのhttpd.confにrewriteを使用するとうまくいくのではないかという話を聞きました。 うちの独自ドメイン名:http://www.hogehoge.co.jp/ サーバ会社の仮ドメイン名:https://abc.foo.com/ httpd.confにどのように書くとうまく検索結果から一発で表示できるようになるのでしょうか? よろしくお願いいたします。