この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:6
ページ更新者:atom
更新日時:2026-05-18 01:50:52

タイトル: Webサーバー / アプリケーションサーバー

本稿はWebサーバー / アプリケーションサーバーのソフトウェアに関する記事です。HTTP リクエストの受付・配信を行う Webサーバーと、動的処理 (Java/PHP/Python 等) を実行するアプリケーションサーバー (APサーバー) を扱います。

子ページからソフトウェアを選択してください。

本ページの子ページ

  • Apache HTTP Server — もっとも歴史のある定番Webサーバー
  • Apache Tomcat — Java サーブレット/JSP 実行用APサーバー
  • Nginx — 高速・低メモリでリバースプロキシ用途にも強いWebサーバー

Webサーバーとアプリケーションサーバーの違い

種別役割代表例
WebサーバーHTTP リクエストの受付・静的コンテンツ配信・リバースプロキシApache HTTP Server、Nginx、IIS、Caddy、LiteSpeed
アプリケーションサーバーサーブレット/EJB/業務ロジックを実行Tomcat、Jetty、WildFly、GlassFish、WebLogic、WebSphere
言語ランタイム + 簡易Web言語ランタイムが直接HTTPを話すNode.js、PHP-FPM、Gunicorn (Python)、Puma (Ruby)、Go HTTPサーバー

主なWebサーバーの比較

サーバー特徴向く用途
Apache HTTP Serverモジュール式・.htaccess・歴史的に最も普及共有レンタルサーバー、既存資産多め
Nginx非同期イベント駆動で低メモリ・高並列リバースプロキシ、静的配信、ロードバランサ
IISMicrosoft Windows 標準ASP.NET、Windows認証 (AD) 環境
CaddyLet's Encrypt自動取得、設定が簡潔小〜中規模、自動HTTPS化したい用途
LiteSpeedApache互換で高速WordPress高速化用途

主なアプリケーションサーバー / 言語ランタイム連携

言語/実行環境代表サーバー
JavaTomcat、Jetty、WildFly、GlassFish、WebLogic、WebSphere
PHPPHP-FPM (Nginx/Apache と連携)、mod_php
PythonGunicorn、uWSGI、Uvicorn (ASGI)、Hypercorn
RubyPuma、Unicorn、Passenger
Node.jsNode本体/PM2 (プロセス管理)
.NETKestrel (背後)、IIS/Nginx (前段)
Go標準ライブラリ net/http で直接

典型的な構成パターン

  • Nginx (前段) + PHP-FPM — PHP系の定番。Laravel・WordPress 等
  • Nginx (前段) + Tomcat — Java Webアプリ。Tomcat単体公開ではなくNginxで終端
  • Apache + mod_php — レンタルサーバー等で広く使用
  • Nginx + Gunicorn + Django/Flask — Python Web の定番
  • ALB / CloudFront + アプリ — クラウドのマネージドLB+バックエンド

選定のポイント

  • 用途: 静的配信中心か、動的処理中心か、リバースプロキシ用か
  • 同時接続数: 高並列なら Nginx 系。スレッド型 (Apache prefork) は接続数が増えると重い
  • 運用エコシステム: 既存資産・人員のスキルセットに合わせる
  • OS / クラウド: Windows なら IIS、AWS なら ALB+EC2/ECS、Azure なら App Service 等の検討
  • HTTPS: Let's Encrypt / ACM / 商用CA。前段で終端するのが一般的

運用上の注意

  • アクセスログ/エラーログのローテーション設定 (logrotate 等)
  • HTTPS化と HTTP→HTTPS リダイレクト、HSTS
  • セキュリティヘッダ: X-Content-Type-OptionsX-Frame-OptionsCSP
  • 大量POST/アップロード: クライアントボディサイズ・タイムアウトの調整
  • バージョン情報の隠蔽: Server: ヘッダから詳細バージョン非表示

関連