Apacheのcgi-bin

このQ&Aのポイント
  • Apacheのcgi-binフォルダについてアドレスの問題やHTMLの表示に関する疑問があります。
  • http://locallhost/cgi-bin/bbs/bbs.cgiというアドレスをhttp://locallhost/bbs/bbs.cgiに変更することは可能でしょうか?
  • Apacheでpostmail CGIを表示しようとするとエラーが出てしまい、cgi-binの外にHTMLを配置する必要があるのでしょうか?
回答を見る
  • ベストアンサー

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を出さなければいけないのでしょうか?よろしくお願いします。

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

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

> 変えることは可能でしょうか?  httpd.confをいじれば余裕のよっちゃん。 > cgi-binの外にhtmlを出さなければいけないのでしょうか?  おおむねその通り。ExecCGIが基本であるディレクトリは、htmlファイルもCGIファイルだと仮定して話を進めるので、ハンドラが無いとされて500エラーだ。解決方法は、htmlファイルを外に出すか、そのディレクトリでhtmlファイルも混在させられるようにhttpd.confをいじるかだ。  君の場合では/bbsというCGI仮想ディレクトリ(ScriptAlias)を作るか、/bbs/.htaccessで+ExecCGIするのが良いのではないかな。

関連するQ&A

  • Apacheでcgi-binを隠すには

    Apacheの設定でcgiの実行ディレクトリをcgi-binに限定(DocumentRootでのcgi実行は不可)した場合、 アドレスはhttp://hoge.hoge/cgi-bin/となりますが、 これをhttp://hoge.hoge/で実行しているかのように隠蔽(偽装)する方法はないでしょうか?

  • 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の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
  • アパッチやプロバイダのcgi-bin

    ディレクトリにおいてある PerlなどのCGIスクリプトが使う テキストデータ(jouhou.dat)は外部から 見られる心配はないのでしょうか? アパッチの /var/www/cgi-bin/jouhou.dat にアクセスするために 他のパソコンから http://192.168.1.2/cgi-bin/jouhou.dat (192.168.1.2はアパッチが動いているPC) とすればブラウザが表示拒否されました

    • ベストアンサー
    • Perl
  • Apacheでのcgi使用についてなんですが・・・

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

  • DebianのApache(掲示板)CGIエラー 500エラー

    debianでkent-webさんのASKA BBSを使いたいんですが うまくいきません http://www.kent-web.com/bbs/aska.html aska BBS rootで/lib/usr/cgi-binに移動してvi test.cgi ------------------------------- #!/usr/bin/perl print "Content-type: text/html \n\n"; print "Hello"; -------------- を試して http://192.168.1.12/cgi-bin/test.cgi は動くんですが which perl /usr/bin/perlです パスはあっています 本題のBBSをデスクトップにDLし tar -xvzf 解凍をし rootで/usr/lib/cgi-bin/に aska.cgi askalog.dat jcode.plを置き パーミッションをhttp://www.kent-web.com/bbs/aska.htmlにあわせて わらかないのでsuEXECサーバ CGIWrapサーバ用のパーミッションと一般サーバを両方ためしてみたんですが http://192.168.1.12/cgi-bin/aska.cgi?mode=checkで試したんですが 500エラーがてしまいます ちなみにaska/aska.cgi?mode=check のaskaフォルダは作らず cgi-bin/aska.cgiです かわらなそうなので http.confの設定は <IfModule mod_alias.c> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ # # "/usr/lib/cgi-bin" could be changed to whatever your ScriptAliased # CGI directory exists, if you have that configured. # <Directory /usr/lib/cgi-bin/> AllowOverride None Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> </IfModule> AddHandler cgi-script .cgi .sh .pl ちゃんと#を外してあります それとほかの質問者の方を参考にしたんですが mod_aliasなんたら モジュールとかよくわからず apt-cache search module cgiなどといろいろ探したんですが無く これのperlのパスをわざと間違えさせてやっると500でエラーが出るってことはちゃんと動いてるはずだと思うんですが ちゃんともどすとhelloと表示されます 間違えーー>#!/hogehoge/hogehge/perl 元-->#!/usr/bin/perl #!/usr/bin/perl print "Content-type: text/html \n\n"; print "Hello"; それと疑いがあるのが aska.cgiのパスはちゃんと/usr/bin/local/perlを whichでみたperlのパス /usr/bin/perlに設定したんですが 動かないみたいです もしかしてgnome-text-editorなどviで開くと文字コードがかわったりしてだめなんでしょうか? もう思い当たる節がありません どなたか詳しい方教えてくださいお願いします

  • フォームで送信ボタンを押すと、postmail.cgiのプログラムリストが表示してしまう。

    CGI初心者です! http://www.kent-web.com/data/postmail.htmlを参考にして cgiで送信フォームを作成しています。 perlへのパスも確認し、sendmailのアドレスも $mailprog = /usr/lib/sendmail; で確認して、動作させました。 また、cgiのプログラムはcgi-bin配下に格納し、 $script = ../../cgi-bin/postmail.cgi; という形で修正しました。 ところが、フォームで送信ボタンを押すと、postmail.cgiのプログラムリストがブラウザで表示してしまい、メール送信が出来ない情況です。 うまく動作させたいのですが、どのようにすればよろしいでしょうか。

    • 締切済み
    • CGI
  • apache で /cgi-bin/にアクセスできません。

    Forbidden You don't have permission to access /cgi-bin/ on this server. Apache/1.3.19 Server at localhost Port 80 ブラウザで見ようとすると上のようなエラーが表示されます。 htdocs内の初期のテストのindex.htmlは参照できます。

  • アパッチでcgi-binフォルダ内のファイルにアクセスできるようにする方法

    アパッチでcgi-binフォルダ内のファイルにアクセスできるようにする方法 VineLinuxの標準状態でcgi-binフォルダ内の スクリプトではないファイルにアクセス可能なようにするには どの様に設定したらよいのでしょうか? 読み込みたいファイルは html jpg 等です。 Apache version 1.3.27 Vine Linux 2.6 です。