-PR-
解決
済み

アパッチについて

  • 暇なときにでも
  • 質問No.52400
  • 閲覧数76
  • ありがとう数6
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 48% (64/132)

大変申し訳ありません。今、アパッチについて、勉強しようと思っているのですが、アパッチ(soft)の制御する役目って何でしょう。

インターネットをする際にHTTPDがあると思うのですが、クライアントがアクションを起こしたときにTCP/IPで情報がサーバに伝わり、その情報を解析するOSがアパッチの役目という考え方でよろしいのですか?でアパッチがCGIを判断したら、perlを起動したり、メールの判断だったらsendmailを動かしたりということなんでしょうか?

大変素人みたいな考えで申し訳ありませんが、ご教授お願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.2
レベル12

ベストアンサー率 57% (232/402)

ApacheはOSではなく、「Apache=httpd」です。
実際に自分でApacheを入れたサーバを立ち上げれば一発でわかりますが(笑)

httpdについてどこまで理解されているかもわかりませんが、基本的な考え方はfkimuraさんが下で書かれている通りです。
ただ少し補足すると、CGIについては、ApacheはOS(Linux,FreeBSD,WinNT,etc)に「こういうプログラムを動かすよう指示が来たからあとよろしくね」と命令を出すだけで、実際にそのプログラムをどの言語(C++、Perl、シェルスクリプトなど)で動かすかは、プログラム内の情報に従ってOSが判断します。
またsendmailを動かしたりすることはApache本体の機能ではなく、通常はあくまでCGIが行うことなので、正確には「Apache→CGI→sendmail」という感じです。

…とここまではApache 1.x系の話。
実は現在開発中のApache 2.x系では、Apache自体がマルチプロトコルサポートになる(つまりhttp以外のプロトコルもApacheで処理できるようになる)ので、追加モジュールさえあれば、Apacheがメールサーバの役割を果たす(=Apacheがsendmailの代わりになる)こともできるようになってしまいます。
とはいえ、まだ現状ではそういった追加モジュールは用意されていないようなので、あくまで「理論上はできるはず」という話に過ぎませんが。
ただ最終的な理想型としては、Apacheがサーバに送られたパケットを見て、http用、ftp用、POP3/SMTP用などのモジュールを起動するというような形態を想定しているようなので、今後はApacheはWebサーバというよりも「inetd.confの代わり」という方向に開発が進んでいくと思われます。
お礼コメント
poposan

お礼率 48% (64/132)

ありがとうございます。大変参考になりました。
頭が整理されて、すっきりとした気分です。
これからも、いろいろ問題が出ると思いますが、少しずつ勉強していきたいと思います。
投稿日時 - 2001-03-16 17:33:51
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1
レベル9

ベストアンサー率 29% (27/92)

少し誤解が含まれているかな?と思います。 Apache(アパッチ)はウェブサーバのソフトウェアの名称だと思っていいです。LinuxなどのPC UNIXやWindows系のプラットフォームでも動作することが可能です。少し下記のページを眺めると誤解が解けてくるのではないでしょうか? 理解は多少捉え方が全体に違っていると思うので、順序立てて頭に入れていかないと混乱されてしまう気がします。ちなみに、メール ...続きを読む
少し誤解が含まれているかな?と思います。
Apache(アパッチ)はウェブサーバのソフトウェアの名称だと思っていいです。LinuxなどのPC UNIXやWindows系のプラットフォームでも動作することが可能です。少し下記のページを眺めると誤解が解けてくるのではないでしょうか?

理解は多少捉え方が全体に違っていると思うので、順序立てて頭に入れていかないと混乱されてしまう気がします。ちなみに、メールはメールサーバが行う範疇なのでAapcheにはメールを動かす機能はないです。CGIの説明も多くは割愛します。

少しだけ書きましょうか。.html .htm などの拡張子がついているものをおけば、 text/html としてapacheはデータを吐き出し、ブラウザは、これを解釈してページを表示させることができていると思います。同様に、CGIが動作することを許されているディレクトリに、.pl .cgiみたいな拡張子でファイルをおき、またApacheの設定がされていればCGIとして動作すると思っていいです。
これらは正しい説明ではないとは思いますが。イメージはそういう感じでとらえてください。また、CGIがPerlで記述されているのであれば、CGIの最初の行に これはPerlで記述されているものだよ、的な記述があるんじゃないでしょうか?CGIにはコンパイルして実行型になったものと、シェルとして解釈しながら動作するようなものがあります。Perlで動くものは後者ということになりますね。

頑張って勉強してみてください。たどり着けばさほどむずかしいものではありませんので。設定するのは httpd.conf という名称のファイルに相当するものだけで動きますので。
お礼コメント
poposan

お礼率 48% (64/132)

ありがとうございます。やっぱりハンドブックを読んだときに誤解をしてしまったようです。これからもがんばって覚えていきます。
投稿日時 - 2001-03-16 16:53:31


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ