• ベストアンサー

「Apache」のCGI・SSI等の設定方法又は参考書籍

Perl・CGI・SSIの勉強を始めようとしています。 「Perl/CGI辞典」という書籍を購入して学習を始めたのですが、Apacheのバージョンの違いに苦しみ、未だにプログラムの勉強に進めずにいます。  CGI・SSIを動作させる為の設定と、「/~xxxx(ディレクトリ名)/」の形式でディレクトリを指定することが出来るようにする設定を行いたいのですが、件の書籍やWeb検索で調べて回る限りでは、Apache 1.3系ベースでの説明が主で、私が自分のWinXP機にダウンロード出来たのは2.2.4でした。そういった書籍や解説サイトのhttpd.confの内容と違っていて、設定出来ませんでした。唯一出来たのは「http://localhost/cgi-bin/xxxx.cgi」という指定の場合に限りCGIが動作して、「http://localhost/cgi-bin/xxxx.shtml」から「xxxx.pl」を呼び出すことなどは駄目でした。  前置きが長くなってしまいましたが、教えて頂きたいのは「Apache 1.3.27」周辺のWinバージョンがダウンロード出来る場所(購入した書籍のバージョンに合わせる為)、あるいは、「Apache 2.2.4」以降のバージョンでの設定方法が説明されているWebサイトまたは書籍です。もちろん、この質問へのご回答の中でお教え頂けるくらいの情報量なのであれば、ここで教えて頂けると嬉しいです。 初心者でちんぷんかんぷんなご質問の仕方かも知れませんが、宜しくお願い致します。

  • CGI
  • 回答数3
  • ありがとう数3

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

  • ベストアンサー
  • kmihara
  • ベストアンサー率50% (3/6)
回答No.3

Apache 公式サイトは日本語ドキュメントが豊富です。2.2.X, 2.0.X, 1.3.X どれでもあります。記述が一部古いという警告を Apache 公式サイト自身が出すページもありますが、無いよりはるかに良いです。 Apache Tutorial: CGI による動的コンテンツ # 2.2.X での CGI コンテンツ作成チュートリアル http://httpd.apache.org/docs/2.2/ja/howto/cgi.html Apache チュートリアル: Server Side Includes 入門 # 2.2.X での SSI コンテンツ作成チュートリアル http://httpd.apache.org/docs/2.2/ja/howto/ssi.html

prussianblue
質問者

お礼

ご回答有難う御座います。 始めたばかりで、バージョン差でのちょっとした違いにも応用がきかず苦労してしまっているというのが実際のところです。お教え頂けましたチュートリアルを参考に、引き続き学習してゆこうと思います。

その他の回答 (2)

  • maura
  • ベストアンサー率46% (48/104)
回答No.2
prussianblue
質問者

お礼

Apacheのサイトを探したりWeb検索をしても自分では見つけられずにいたのですが、ドンピシャな「1.3.27」の在り処を教えてくださり、有難う御座いました。とても助かりました。

  • okg00
  • ベストアンサー率39% (1322/3338)
回答No.1

OSは何でしょう? http://www2j.biglobe.ne.jp/~apollo/server/server.html Apacheは2.0系の方が2.2以降と比べると資料は多いような気がします。 どうしたら何ができて、何をしたら何ができなかった、その場合のエラー内容などを詳細に記述するとこのサイトでも対応できるかと。

prussianblue
質問者

お礼

早々のご回答有難う御座います。 OSはwinXPhomeです。1.3系か2.2以降(書籍と同バージョンか、最新バージョン)という偏った調べ方をしてしまっていたのですが、2.0は資料が多いというのを知れて助かります。 他の回答者様からは「1.3.27」の在り処を教えて頂く事が出来ましたので、詳細な書籍がある「1.3.27」で覚えて、okg00様に頂いたアドバイスをもとに2.0へ移行するという方向で学習してゆきたいと思います。

関連するQ&A

  • Apacheの設定について

    WindowsXP SP2 のローカルでCGIを動作させるために  http://www.adminweb.jp/apache/ を参考に下記を試みました。 (1)Apache ダウンロード・インストール・接続確認   「http://localhost/」へアクセスして「It works!」表示確認    (htdocs ディレクトリの index.html) (2)ActivePerlインストール    perl -v perl -h で動作確認 (3)CGI用エイリアスの設定    ScriptAlias /cgi-bin/ "C:/SERVER/Apache/cgi-bin/" (4)以下の test.pl を C:/SERVER/Apache/cgi-bin/ に設置    ------------------------------------------------------    #!C:/Perl/bin/perl.exe print "Content-type: text/html;\n\n"; print "<html><body><h1>test cgi</h1></body></html>\n";   -------------------------------------------------------    http://localhost/cgi-bin/test.pl の実行で    「Internal Server Error」になってしまいます。 どこの設定が間違っているのか見当がつきません。 何卒ご指導宜しくお願い致します。

  • 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の連携ということを以前行ったのですが、動かない事と関係あるのでしょうか? 文字数の関係で見づらい説明になっているかと思いますがよろしくお願い致します。

  • Apache2.2でPerlを呼び出すSSIを使ったHTMLをloca

    Apache2.2でPerlを呼び出すSSIを使ったHTMLをlocalhostで動かそうとしています。 AddHandler cgi-script .cgi .plに変更。 exec cmdをHTMLファイルに埋め込みました。 <!--#exec cmd="/PROGRA~1/APACHE~1/Apache2.2/cgi-bin/counter.pl counter"--> インターネットのApacheでSSIを使う方法を読み,httpd.confの中に Options FollowSymLinks Multiviews の後にIncludesをつけ   AddType text/html .shtml と   AddHandler server-parsed .shtml を加えました。しかし、localhostで実行するとHTMLのSSIの部分だけ表示されません。 (アクセスカウンターのカウンターだけ表示されません)。エラーログには ”指定されたファイルが見つかりません。 : don't know how to spawn cmd child process: C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/counter.shtml” と記録されていました。 どうしたらよいのでしょうか。 どなたか解決できるかた、回答よろしくおねがいします。

    • 締切済み
    • CGI
  • [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の mod_rewite の設定方法について

    Apacheの mod_rewrite の設定方法についてお聞きしたい事があります。 Perl等のURL その(1) http://localhost/cgi-bin/dir1/dir2/dir3/file.cgi?para='test'              |__________dir_________||__file_||__パラメータ_| というURLがあるとします。↑ 上記のディレクトリをパラメータとしておく場合↓ Perl等のURL その(2) http://localhost/cgi-bin/hoge.cgi?dir=/dir1/dir2/dir3/file.cgi?para='test'              |_別のファイル-||_______上記のdirとfileとパラメータ ------| という事を行いたいのですが、mod_rewriteをどのように設定すればいいのかが よくわかりません。 すいませんが、誰か教えていただけないでしょうか。

    • ベストアンサー
    • Perl
  • apache1.3とperlでCGI

    超初心者です。 windows XPでapache1.3 と active perl 5.1.2をインストールして、 CGIを動作させたいと考えています。 http://localhostを入力してapacheの起動画面は表示されていること を確認しました。 その後httpdconfに下記を追加しました。 AddHandler cgi-script .cgi .pl AddType application/x-httpd-cgi .cgi AddType application/x-httpd-cgi .pl <Directory "C:/Program Files/Apache Group/Apache/cgi-bin"> AllowOverride None Options ExecCGI Order allow,deny Allow from all </Directory> C:\Program Files\Apache Group\Apache\cgi-binに既存で存在する printenv.plを実行しようとするとファイルのダウンロードの画面が出てきて 実行されません。printenv.plは下記のようにperl.exeへのパスだけ変更しました。 #! C:/Perl/bin/perl ## ## printenv -- demo CGI program which just prints its environment ## print "Content-type: text/plain\n\n"; foreach $var (sort(keys(%ENV))) { $val = $ENV{$var}; $val =~ s|\n|\\n|g; $val =~ s|"|\\"|g; print "${var}=\"${val}\"\n"; } どうすればCGIが実行できるようになるのでしょうか? ご教授ください。よろしくお願い致します。

    • ベストアンサー
    • CGI
  • CGI timeoutって? IISでのcgi設定

    すみません質問させてください。 今、XPでIISをインストールしてCGIが動くようにしてるんですが うまくいきません。 http://localhost/hello.cgi というurlで実行できると思うんですが、 いつまでも読み込んでるだけで、実行されない感じです。 CGI timeoutといわれます。 実行するCGIはHELLOと表示する単純なものです。 また、.cgiファイルは実行プログラムをC:\perl\bin\perl.exeに 指定しています。 IISでは、規定のWEBサイトのプロパティ>ホームディレクトリの 「構成」で.cgiの実行ファイルをC:\perl\bin\perl.exeに指定しています。 とりあえずやるだけやったと思ってるんですが、うまくいかないのはどうしてでしょう。 よろしくお願いします。

    • 締切済み
    • CGI
  • Apacheでphpとcgiを使いたいのですが

    phpは問題なく使えましたが、cgiで問題があります。 今まではサーバーソフトにANHTTPDを使っていたのですが、phpを使う上で問題があったので汎用性のあるApacheに乗り換えました。するとphpはうまく動いた反面、cgiがうまく動作しなくなってしまいました。 ANHTTPDのときは、ローカルホスト以下のフォルダならどこであろうとcgiを含むすべてのファイルが使用できましたが、Apacheでは指定したフォルダ以下にcgiしか置けないみたいでした。そのフォルダ内にhtmlファイルなどを置くとアクセスできません。 この状態で使うとなると、cgiファイルだけその1箇所のフォルダ以下に集め、他のファイルを別のディレクトリに置かなくてはいけませんが、それでは1つのプログラムに必要なファイル類がバラけてしまうのでその方法は使いたくありません。 どうにかして1つのフォルダ以下でcgiとその他のファイルを扱えるように出来ませんでしょうか?また、僕が使っている今の方法では、cgiプログラムの1行目のパスを「C:/Perl/bin/perl」にしなくてはいけませんが、これもWebサーバー上にアップする際に書き換える手間がかかってしまいます。ANHTTPDの時は「/usr/bin/perl」「/usr/local/bin/perl」のような状態でも普通に使えました。この書き換えの手間を省く方法もありましたら情報いただければと思います。 以上です。 よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • apacheの設定について

    先日red hat linux8(雑誌の付録)を購入し、apacheを試しているのですが。 http://localhost/やhttpd://localhost/~ユーザー名/にはアクセスできるのですが。 http://localhost/manual/index.htmlやhttpd://localhost/cgi-bin/にアクセスしようとすると「302 found」と出てしまいます。 ちゃんとmanualやcgi-binのフォルダはあるのに... どなたか、教えてください。 apacheのバージョンは2.0.4です。 お願いします。

  • IISでCGIの設定がうまくいきません

    すみません質問させてください。 今、XPでIISをインストールしてCGIが動くようにしてるんですが うまくいきません。 http://localhost/hello.cgi というurlで実行できると思うんですが、 いつまでも読み込んでるだけで、実行されない感じです。 実行するCGIはHELLOと表示する単純なものです。 また、.cgiファイルは実行プログラムをC:\perl\bin\perl.exeに 指定しています。 IISでは、規定のWEBサイトのプロパティ>ホームディレクトリの 「構成」で.cgiの実行ファイルをC:\perl\perl.exeに指定しています。 とりあえずやるだけやったと思ってるんですが、うまくいかないのはどうしてでしょう。 よろしくお願いします。

専門家に質問してみよう