
第3回 Apacheの基本インストール
一志 達也<ichishi@pochi.tis.co.jp>
TIS株式会社
2001/3/9
Appendix
| --quiet | 画面上にメッセージを表示しない |
| --silent | quietと同じ |
| --verbose | 画面上に詳細なメッセージを表示 |
| --shadow[=DIR] | コンパイルに必要なファイルを指定したディレクトリ以下に作成 |
| --help | 画面上にヘルプを表示 |
| --show-layout | 画面上にApacheがインストールされるディレクトリを表示 |
| --with-layout=[F:]ID | 指定したファイルの内容のとおりにApacheのファイルを配置する |
| --target=TARGET | 設定ファイルなどの名前を変更(httpd.conf→ichishi.confなど) |
| --prefix=PREFIX | Apacheがインストールされるディレクトリを変更する |
| --exec-prefix=EPREFIX | ファイルの種類別にディレクトリを指定する。変更後、どこにインストールされるかはshow-layoutで確認 |
| --bindir=DIR | |
| --sbindir=DIR | |
| --libexecdir=DIR | |
| --mandir=DIR | |
| --sysconfdir=DIR | |
| --datadir=DIR | |
| --iconsdir=DIR | |
| --htdocsdir=DIR | |
| --cgidir=DIR | |
| --includedir=DIR | |
| --localstatedir=DIR | |
| --runtimedir=DIR | |
| --logfiledir=DIR | |
| --proxycachedir=DIR | |
| --add-module=FILE | Apacheの標準以外のモジュールファイルを追加する |
| --activate-module=FILE | |
| --permute-module=N1:N2 | モジュールを組み込む順序を指定する |
| --enable-module=NAME | 指定したApacheの標準付属モジュールを組み込む |
| --disable-module=NAME | 指定したApacheの標準付属モジュールを組み込まない |
| --enable-shared=NAME | 指定したApacheの標準付属モジュールをDSO(補足3)で組み込む |
| --disable-shared=NAME | 指定したApacheの標準付属モジュールをDSOで組み込まない |
| 表1 これらのオプションは、./configureに続いて指定する。これ以外にもオプションは存在するが、それらは使うことが考えにくいか、インストール後でも変更可能なものである。DSOについては補足3を参照 | |
| モジュール | 機能 | デフォルト |
| mod_access | ホストに基づいたアクセス制御 |
Yes
|
| mod_actions | ファイル種別/メソッドに基づいたスクリプトの実行 |
Yes
|
| mod_alias | Aliases and redirects. |
Yes
|
| mod_asis | .asis ファイルハンドラー |
Yes
|
| mod_auth | テキストファイルを用いたユーザ認証 |
Yes
|
| mod_auth_anon | FTPスタイルの匿名(Anonymous)ユーザー認証 |
No
|
| mod_auth_db | バークレイDBファイルを用いたユーザー認証 |
No
|
| mod_auth_dbm | DBMファイルを用いたユーザー認証 |
No
|
| mod_autoindex | 自動ディレクトリリスト表示 |
Yes
|
| mod_cern_meta | HTTPハンドラメタファイルのサポート |
No
|
| mod_cgi | CGIスクリプトの実行 |
Yes
|
| mod_digest | MD5ユーザー認証 |
No
|
| mod_dir | 基本的なディレクトリハンドリング |
Yes
|
| mod_env | CGIスクリプトへの環境変数の継承 |
Yes
|
| mod_example | Apache APIの実証 |
No
|
| mod_expires | 割り当ての終了:リソースへのヘッダ |
No
|
| mod_headers | リソースに任意のHTTPヘッダを加える |
No
|
| mod_imap | イメージマップファイルのハンドラ |
Yes
|
| mod_include | サーバで解析するドキュメント |
Yes
|
| mod_info | サーバの設定情報 |
No
|
| mod_log_agent | ユーザーエージェントのログ蓄積 |
No
|
| mod_log_config | ユーザー定義ログ |
Yes
|
| mod_log_referer | ドキュメントリファレンスのログ蓄積 |
No
|
| mod_mime | ファイル拡張子を使ったドキュメントタイプの決定 |
Yes
|
| mod_mime-magic | magic numbers を使ったドキュメントタイプの決定 |
No
|
| mod_negotiation | コンテンツのネゴシエーション |
Yes
|
| mod_proxy | キャッシングプロキシ機能 |
No
|
| mod_rewrite | 通常表記を使った強力なURI-to-filenameマッピング |
No
|
| mod_setenvif | クライアント情報を基にした環境変数の設定 |
Yes
|
| mod_spelling | URLでのminor typosの自動訂正 |
No
|
| mod_status | サーバステータスを表示 |
Yes
|
| mod_unique-id | あらゆるリクエストのためのユニークなリクエスト識別の生成 |
No
|
| mod_userdir | ユーザーのホーム・ディレクトリ |
Yes
|
| mod_usertrack | cookieを用いたユーザー追跡(mod_cookies.cと置き換え) |
No
|
| 表2 ここに挙げたモジュールはLinux用Apache 1.3.*のもの。Windows用や古いバージョンのApacheでは、ここに挙げていないモジュールが含まれていることがある。各モジュールの詳細などは、http://japache.infoscience.co.jp/japanese_1_3/manual/mod/index.htmlを参照 | ||
| 補足1 Apacheのインストールに必要なツール tarやgzipだけでなく、Apacheをインストールするためには以下のようなツールも必要となる。このほか、インストール要件を確認していただくため、そのための情報も掲載しておくので参考にしていただきたい。Linuxであれば、たいていの場合は問題ないと思うが、あえてツールをインストールしていないこともあるので注意していただきたい。 gcc Apacheをコンパイルするには「gcc」(GNU C Compiler)が必要になる。それ以外のCコンパイラではうまくいかない可能性が高い。また、バージョンが古すぎるのもよくない。Apacheのコンパイルに必要なのは、少なくともバージョン2.7.2以上とされているが、現時点での最新版は2.96である。gccがインストールされていれば、「gcc -v」と入力することでバージョンを確認できる。 make gccと同じく、makeもアプリケーションのコンパイルに欠かせない。「make -v」と入力すればバージョンに関する応答があるはずなので、応答がないようならインストールするようにしてほしい。 現在の一般的なLinuxディストリビューションであれば、これらのツールはApacheのインストールに支障のないバージョンが収録されている。ただし、商用UNIXの場合は、makeもGNUのmakeを使わなければならない点に注意すること。ともかく、なんでもかんでもGNUから最新版を入手してしまえるなら、その方が近道かもしれない。 |
| 補足2 モジュールとは Apacheを利用するうえでモジュールは欠かせない。なぜなら、Apacheからすべてのモジュールを外したら、ごく単純な機能しか持たないWebサーバになってしまうからだ(CGIプログラムさえも実行できなくなってしまう!)。
本文中でも説明しているとおり、Apacheには初めから幾つかのモジュールが組み込まれている(表2)が、これら以外にも数多くのモジュールがインターネットなどで公開されている。その中には、暗号化されたHTTP(HTTPS)を利用するためのSSLモジュール(mod_ssl)や、PHPのようにプログラム言語を実行するエンジンも含まれる。こうしたポピュラーなモジュールから、マイナーなモジュールまで用意されているから、何か困ったことがあればモジュールで機能を拡張できないか調べてみるといいだろう。 |
| 補足3 DSOとapxs 補足2で「モジュールを使えばApacheをどんどん拡張できる」と説明した。だとすれば、なぜ初めからすべてのモジュールを組み込んでおかないのだろうか? どうしてわざわざ組み込みを宣言しなくてはならないのだろうか? その答えは単純なもので、必要もないモジュールを組み込んでしまえば、バイナリが肥大化するし動作が遅くなるかもしれないからである。 では、インストール時には何も組み込まなかったとして、後から必要になったらどうなるのだろうか。その場合、通常のモジュールとしてApacheに組み込むのならば、Apacheを再コンパイルしなければならない。しかし、それではサーバを停止しなくてはならないし、なにより面倒だと思われるだろう。 そのような面倒と運用上の問題を回避するため、Apache 1.3から「DSO」(Dynamic Shared Object)と呼ばれる機能が組み込まれた。この機能を有効にしておくと、あらかじめApacheにモジュールを組み込まなくても、モジュールのファイルさえ用意すれば必要なときだけ組み込めるようになる。ただし、DSOを有効にするには、Apacheをインストールする際に「SOモジュール」(mod_so)を組み込んでおかなくてはならない。 SOモジュールを組み込むには、configureを実行する際に「--enable-module=so」を指定すればいいのだが、場合によってはうまくいかないかもしれない。その場合は、さらに「--enable-rule=SHARED_CORE」も指定する。心配ならば、最初から2つとも指定しておけば、ほとんどの場合問題なくDSOを有効にできるはずだ。詳しく知りたい方はApacheのマニュアル(ソースディレクトリの中のhtdocs/manual/dso.html)などを参照してほしい。 DSOを有効にすればモジュールの追加は容易になるが、モジュール側でもDSOへの対応が必要となるから注意しなくてはならない。 その方法はモジュールごとに異なるから、各モジュールの解説を参考にしていただきたいのだが、たいていは「apxs」と呼ばれるApacheのツールを使って行われる。ただし、Apacheにあらかじめ添付されているモジュールは、configureを実行する際に「--enable-shared=NAME」(NAMEはモジュールの名前)と指定するだけでDSOに対応できる。 いずれにしても、DSOは便利な機能だから有効に活用していただきたい。 |
|
5/5
|
|
| Index | |
| ApacheによるWebサーバ構築 | |
| コンパイルとは? なぜコンパイルが必要なのか |
|
| インストールの準備作業 Apacheの入手 ソースコードの解凍 必ず見るべき2つのファイル コンパイル前設定を行うconfigure |
|
| コンパイルとインストール
makeでコンパイル 総仕上げのインストールコマンド |
|
| Apacheの起動と動作確認 | |
| Appendix | |
| 連載 ApacheによるWebサーバ構築 |
| Linux Squareフォーラム サーバ構築・運用関連記事 |
| 連載:Heartbeatでかんたんクラスタリング(連載中) オープンソースソフトウェアの「Heartbeat」を使ってHAクラスタを実現し、サービスを「落とさない」仕組みを実現します |
|
| 特集:Apache 2.2でWebサイトをパフォーマンスアップ! 最新安定版Apache 2.2は、何が変わったのか? 最新のApacheを新機能の使い方とともに解説する |
|
| 連載:実用 Apache 2.0運用・管理術(全8回) 本連載では、Apache 2.0の運用や管理方法を解説する。まず必須設定と基本的なセキュリティ対策を行い今後の運用に備える |
|
| 連載:実用
BIND 9で作るDNSサーバ(全15回) 本連載では、BIND 9の構築/運用方法を解説していく。実際に役立つことを目的に、セキュリティや大規模運用などのテーマを取り上げていく |
|
| 連載:実用qmailサーバ運用・管理術(全14回) 本連載を通して、qmailによるメールサーバの高度な構築・運用・管理術を紹介。SPAM対策やML管理からサーバでのウイルスチェックなどまで |
|
| 特集:Samba
3.0の全貌 改訂版 Samba 3.0リリースから8カ月。ここであらためて、Samba 3.0系列の新機能、インストール方法、国際化の現状を解説する |
|
|
TechTargetジャパン
Linux Square フォーラム 新着記事
- クライアントがアクセスできる範囲を制限する (2012/2/10)
今回は、サーバ上のファイルの扱いに関係する設定項目について解説します - 新しい記事も入っていて安心しました (2012/2/7)
Linux Squareのアクセスランキングを公開します。定番の記事ばかりでなく、連載中の記事もよろしくお願いいたします - エラーメッセージをどう扱うか? (2012/2/2)
今回は、スクリプト実行時にエラーが発生したことを知らせるメッセージの扱い方を説明します - ファイルのアップロードを制限する (2012/1/30)
HTTPクライアントがアップロードしてくるファイルの扱いについて解説します。そもそも受け入れる必要があるのか? ということのほかにも、いろいろ設定が必要です
|
|
@IT 新着記事
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
お勧め求人情報
転職/派遣情報を探す
**先週の人気講座ランキング**
〜 Android編 〜
ホワイトペーパー(TechTargetジャパン)
ソリューションFLASH

