IT用語: Apache HTTP Serverとは|世界最古・最広普及のWebサーバー
PHPとの相性が良く.htaccessで柔軟な設定が可能なApache HTTP Serverの仕組みとNginxとの違いを解説。
Apache HTTP Serverとは
Apache HTTP Serverは、Apache Software Foundationが管理するオープンソースのWebサーバーソフトウェアです。1995年のリリース以来、長年にわたりWebサーバーシェアNo.1を誇り(現在はNginxと拮抗)、PHP・WordPress・Drupalなど多くのCMS・Webアプリとの相性の良さで知られます。
Apacheの特徴
マルチプロセッシングモジュール(MPM)
接続を処理する方式を選択できます。
| MPM | 方式 | 特徴 |
|---|---|---|
| prefork | プロセス | PHP等との互換性最高。メモリ消費大 |
| worker | スレッド | メモリ効率が良い。スレッドセーフ必要 |
| event | イベント駆動 | 高並列対応。Nginx寄りの方式 |
.htaccess
ディレクトリ単位で設定を上書きできるApache独自の機能です。ホスティング環境で各サイトが独自設定を持てる点が便利ですが、リクエストごとに.htaccessを読み込むためパフォーマンスに影響します。
# URL書き換え(Nginx設定が不要なWordPressでよく使われる)
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
# キャッシュ設定
<FilesMatch "\.(css|js|png|jpg)$">
ExpiresActive On
ExpiresDefault "access plus 1 month"
</FilesMatch>
mod_rewrite
URLの書き換えを行うApacheの強力なモジュールです。/article?id=123 → /article/123 のようなSEOフレンドリーURL変換に使われます。WordPressのパーマリンク機能もmod_rewriteに依存しています。
関連する用語 (インフラ)
全16件を見るIT用語: Nginxとは|高性能なWebサーバー・リバースプロキシの定番
イベント駆動型アーキテクチャで高並列処理を実現するNginxの仕組み・設定例・Apacheとの違いを解説。
コンテナ (Container)
OSの上に、アプリを動かすための専用の「カゴ(隔離空間)」を作り、どこでも同じように動かせるようにする技術。
Kubernetes (クーバネティス/K8s)
大量のDockerコンテナを自動で管理・操作するための「コンテナオーケストレーション」ツール。
IT用語: ロードバランサーとは|複数サーバーへのトラフィック分散の仕組み
アクセスを複数のサーバーに振り分けて可用性とスケーラビリティを高めるロードバランサーの仕組みと種類を解説。
IT用語: リバースプロキシとは|サーバー前段に置く中継役の仕組みと利点
クライアントとアプリサーバーの間に立つリバースプロキシの役割・フォワードプロキシとの違い・活用例を解説。
仮想化 (Virtualization)
1台の物理的なコンピュータの中に、ソフトウェアの力で「複数の架空のコンピュータ(仮想マシン)」を作り出す技術。