タイトル: Apache HTTP Server
Apache HTTP Serverとは

Apache HTTP Serverは、世界で最も多く使われているWebサーバソフトウェア。
無償であり導入方法が楽なのが特徴。
大規模なサイトから小規模なサイトまで幅広く使われている。
主な特徴
- 無料・オープンソース — Apache License 2.0 で配布
- モジュールアーキテクチャ — mod_ssl / mod_rewrite / mod_proxy 等を必要に応じて組み合わせ
- クロスプラットフォーム — Linux、Windows、macOSで動作
- 豊富なドキュメント — 長年使われている分、情報が豊富
- .htaccess による柔軟な制御 — ディレクトリ単位で挙動を変えられる
本ページの子ページ一覧
導入
- インストール方法(Ubuntu) — apt経由
- インストール方法(CentOS) — yum経由
- VPSへの導入例(CentOS編) — 実環境構築例
設定ファイル
- ディレクトリ構造 —
/etc/httpd配下の構成 - httpd.conf(設定ファイル) — メイン設定
- ドキュメントルートの変更方法 —
DocumentRootの変更 - .htaccess — ディレクトリ単位の設定
- .htaccessでベーシック認証 — パスワード保護
運用
- コマンド一覧 — 起動・停止・リロード等
- configの文法チェック —
httpd -t - httpd.conf系のバーチャルホストの設定エラー有無確認方法
- SSLの設定 — HTTPS 化
- エラー一覧 — Apacheのエラー集約
基本のコマンド早見
| 用途 | RHEL/CentOS系 | Debian/Ubuntu系 |
|---|---|---|
| 起動 | systemctl start httpd | systemctl start apache2 |
| 停止 | systemctl stop httpd | systemctl stop apache2 |
| 再起動 | systemctl restart httpd | systemctl restart apache2 |
| 設定リロード | systemctl reload httpd | systemctl reload apache2 |
| 文法チェック | httpd -t | apache2ctl configtest |
| 有効モジュール一覧 | httpd -M | apache2ctl -M |
| バージョン確認 | httpd -v | apache2 -v |
主要モジュール
| モジュール | 用途 |
|---|---|
mod_ssl | HTTPS(TLS)対応 |
mod_rewrite | URLの書き換え |
mod_proxy | リバースプロキシ |
mod_php / mod_proxy_fcgi | PHP実行 |
mod_headers | HTTPヘッダの追加・変更 |
mod_deflate | レスポンスのgzip圧縮 |
mod_security | WAF機能 |
注意点
- SELinuxが有効な環境では DocumentRoot を変えた後に
chcon/restoreconが必要 - 本番リロードは
restartよりreload(graceful restart)を使うと接続を切らずに済む - 設定変更後は必ず
httpd -tで文法チェック
関連
- 親カテゴリ: Webサーバー / アプリケーションサーバー
- 類似: Apache Tomcat(こちらはJava Servlet/JSP用)