Apacheのバージョンを確認する方法|httpd -v・apachectl -V・rpmの使い分け実例

宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)LinuxtipsWebサーバー管理 > Apacheのバージョンを確認する方法|httpd -v・apachectl -V・rpmの使い分け実例
「Apacheのバージョンって、どうやって調べればいいんだろう?」

脆弱性対応やアップデートの際、まず把握しなければならないのがApacheのバージョン情報です。しかし、確認方法はひとつではありません。サーバーにSSHログインできる場合、パッケージ管理で調べたい場合、さらにはサーバーに直接入れない場合と、状況によって使うコマンドが変わります。

この記事では、Apacheのバージョンを確認する方法を5つ紹介します。基本のhttpd -vから、ビルド情報の詳細確認、rpm/dpkgによるパッケージ確認、さらに外部からの確認方法まで、実際のサーバー出力例とあわせて解説します。

【この記事でわかること】

・httpd -v でApacheのバージョンを即座に確認できる
・httpd -V でビルド日時やMPM・設定ファイルの場所もわかる
・rpm -q httpd でパッケージのリリース番号まで把握できる
・サーバーにログインできない場合はcurlで応答ヘッダーから確認する



「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

Apacheのバージョンを確認する5つの方法

Apacheのバージョン確認には、目的に応じて複数の方法があります。まずは一覧で把握してください。

やりたいこと コマンド 補足
バージョンだけ確認 httpd -v 最も基本的な方法
ビルド情報を詳細に確認 httpd -V MPM・設定ファイルパスも表示
パッケージのバージョンを確認 rpm -q httpd Red Hat系。Debian系はdpkg -l apache2
apachectlで確認 apachectl -v httpdへのラッパー
外部からバージョンを確認 curl -sI http://対象サーバー/ Serverヘッダーで判別

方法1:httpd -v でバージョンを確認する

最もシンプルで確実な方法です。httpdコマンドに-vオプションを付けて実行します。

$ httpd -v Server version: Apache/2.4.62 (Rocky Linux) Server built: Aug 12 2024 00:00:00

Server versionの行にApacheのバージョン番号が表示されます。上の例ではApache 2.4.62がインストールされていることがわかります。

Server builtはApacheがビルドされた日時です。パッケージ管理でインストールした場合は、ディストリビューションがパッケージをビルドした日付が表示されます。

httpd コマンドが見つからない場合

command not found」と表示される場合は、パスが通っていないか、そもそもApacheがインストールされていない可能性があります。

フルパスで実行してみてください。

# Red Hat系(RHEL、AlmaLinux、Rocky Linux) $ /usr/sbin/httpd -v Server version: Apache/2.4.62 (Rocky Linux) Server built: Aug 12 2024 00:00:00 # ソースからインストールした場合の例 $ /usr/local/apache2/bin/httpd -v Server version: Apache/2.4.62 (Unix) Server built: Sep 3 2024 15:20:41

Debian/Ubuntu系ではhttpdではなくapache2コマンドを使います。

# Debian / Ubuntu系 $ apache2 -v Server version: Apache/2.4.62 (Ubuntu) Server built: 2024-08-15T00:00:00

方法2:httpd -V でビルドの詳細情報を確認する

-v(小文字)ではバージョンとビルド日時しか表示されませんが、-V(大文字)を使うと、Apacheのビルド時に組み込まれた設定の詳細を確認できます。

$ httpd -V Server version: Apache/2.4.62 (Rocky Linux) Server built: Aug 12 2024 00:00:00 Server's Module Magic Number: 20120211:132 Server loaded: APR 1.7.0, APR-UTIL 1.6.3, PCRE 8.44 2020-02-12 Compiled using: APR 1.7.0, APR-UTIL 1.6.3, PCRE 8.44 2020-02-12 Architecture: 64-bit Server MPM: event threaded: yes (fixed thread count) forked: yes (variable process count) Server compiled with.... -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv6) -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" -D DEFAULT_PIDLOG="run/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types"

この出力から読み取れる情報は多岐にわたります。特に重要な項目を解説します。

Server MPM: マルチプロセッシングモジュールの種類。event、prefork、workerのいずれか。パフォーマンスチューニングの基本情報
HTTPD_ROOT: Apacheの設定ファイルのルートディレクトリ
SERVER_CONFIG_FILE: メインの設定ファイルパス(HTTPD_ROOTからの相対パス)
DEFAULT_ERRORLOG: エラーログのデフォルト出力先

「設定ファイルはどこにあるの?」と聞かれた時に、httpd -Vを実行すれば一発で答えが出ます。特にソースからコンパイルしてインストールした環境では、パスが標準と異なることが多いため、この確認は欠かせません。

方法3:rpm / dpkg でパッケージバージョンを確認する

パッケージ管理コマンドを使えば、Apacheを起動していなくてもバージョンを確認できます。リリース番号やアーキテクチャまで含めた正確なパッケージ情報が得られるため、脆弱性対応の報告書作成にも役立ちます。

1. Red Hat系(RHEL、AlmaLinux、Rocky Linux)

$ rpm -q httpd httpd-2.4.62-1.el9.x86_64

出力の読み方は以下のとおりです。

httpd: パッケージ名
2.4.62: Apacheのバージョン
1.el9: リリース番号(el9 = RHEL 9系)
x86_64: アーキテクチャ(64bit)

さらに詳しい情報が必要な場合は、rpm -qiを使います。

$ rpm -qi httpd Name : httpd Version : 2.4.62 Release : 1.el9 Architecture: x86_64 Install Date: 2024年09月15日 10時30分00秒 Group : System Environment/Daemons Size : 4521389 License : ASL 2.0 Signature : RSA/SHA256, 2024年08月15日 12時00分00秒, Key ID 350d275d51cb2c6b Source RPM : httpd-2.4.62-1.el9.src.rpm Build Date : 2024年08月12日 00時00分00秒 Vendor : Rocky URL : https://httpd.apache.org/ Summary : Apache HTTP Server

2. Debian / Ubuntu系

$ dpkg -l apache2 希望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持 | 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待/(T)トリガ保留 |/ エラー?=(空)無/(R)要再インストール ||/ 名前 バージョン アーキテクチャ 説明 +++-==============-================-================-============================ ii apache2 2.4.62-1ubuntu1 amd64 Apache HTTP Server

方法4:apachectl -v で確認する

apachectlはApacheの起動・停止を管理するラッパースクリプトです。httpd -vと同じ結果が得られます。

$ apachectl -v Server version: Apache/2.4.62 (Rocky Linux) Server built: Aug 12 2024 00:00:00

httpdコマンドにパスが通っていないけど、apachectlなら使える」という状況は実務でよくあります。apachectl/usr/sbin/にあるため、一般ユーザーのPATHにも含まれていることが多いのです。

apachectl -V(大文字)でも、httpd -Vと同じ詳細情報を確認できます。

方法5:外部からHTTPヘッダーで確認する

サーバーにSSHログインできない場合でも、HTTPレスポンスヘッダーのServerフィールドからバージョンを確認できる場合があります。

$ curl -sI http://192.168.1.XXX/ HTTP/1.1 200 OK Date: Mon, 07 Apr 2026 03:15:00 GMT Server: Apache/2.4.62 (Rocky Linux) Content-Type: text/html; charset=UTF-8

Server:の行にApacheのバージョンが表示されています。

【重要】Serverヘッダーが表示されない場合

セキュリティ対策として、本番環境ではApacheのバージョン情報を隠すのが一般的です。httpd.confで以下のように設定されていると、バージョンは表示されません。

# httpd.conf の設定例 ServerTokens Prod

この設定がされている場合、Serverヘッダーには「Apache」とだけ表示され、バージョン番号は含まれません。

$ curl -sI http://192.168.1.XXX/ HTTP/1.1 200 OK Server: Apache

ServerTokensディレクティブの設定値と表示内容の対応は以下のとおりです。

設定値 表示例
Full(デフォルト) Apache/2.4.62 (Rocky Linux) OpenSSL/3.0.7
OS Apache/2.4.62 (Rocky Linux)
Minor Apache/2.4.62
Major Apache/2.4
Prod Apache

本番サーバーではServerTokens Prodに設定することを強く推奨します。バージョン情報の公開は、攻撃者に脆弱性を突くヒントを与えることになります。

トラブルシュート:バージョンが確認できないときの対処


「command not found」と表示される

Apacheがインストールされていないか、パスが通っていません。以下の手順で確認してください。

# Apacheがインストールされているか確認(Red Hat系) $ rpm -qa | grep httpd httpd-2.4.62-1.el9.x86_64 httpd-tools-2.4.62-1.el9.x86_64 httpd-filesystem-2.4.62-1.el9.noarch # 何も表示されなければインストールされていない # Debian / Ubuntu系の場合 $ dpkg -l | grep apache2

パッケージがインストールされているのにコマンドが見つからない場合は、whichfindでバイナリの場所を探します。

$ which httpd /usr/sbin/httpd # 見つからない場合 $ find / -name httpd -type f 2>/dev/null /usr/local/apache2/bin/httpd

複数バージョンが混在している場合

ソースからインストールしたApacheとパッケージ管理のApacheが共存していることがあります。どちらが実際に動いているかを確認するには、プロセスを調べます。

$ ps aux | grep httpd | grep -v grep root 1234 0.0 0.3 123456 7890 ? Ss 10:15 0:00 /usr/sbin/httpd -DFOREGROUND apache 1235 0.0 0.2 123456 5678 ? S 10:15 0:00 /usr/sbin/httpd -DFOREGROUND

左から5列目の/usr/sbin/httpdがバイナリのパスです。このパスを指定して-vオプションを実行すれば、実際に稼働しているApacheのバージョンを正確に把握できます。

$ /usr/sbin/httpd -v Server version: Apache/2.4.62 (Rocky Linux) Server built: Aug 12 2024 00:00:00

実務Tips:バージョン確認が必要になる場面


1. 脆弱性対応(CVE確認)

Apache HTTPDの脆弱性が公表された場合、自分のサーバーが影響を受けるかどうかをすぐに判断する必要があります。httpd -vで得られるバージョン番号と、CVEの影響範囲を照合してください。

2. アップデート前後の確認

yum update httpdapt upgrade apache2の前後でバージョンを記録しておくことで、変更履歴を正確に残せます。

# アップデート前に記録 $ httpd -v >> /tmp/apache_version_before.txt 2>&1 # アップデート実行 $ sudo yum update httpd # アップデート後に確認 $ httpd -v Server version: Apache/2.4.63 (Rocky Linux) Server built: Feb 10 2025 00:00:00

3. .htaccessの構文がバージョンによって変わる

Apache 2.2系と2.4系では、アクセス制御の書き方が大きく変更されました。古い設定ファイルをそのまま使うと「500 Internal Server Error」が発生します。

Apache 2.2系 Apache 2.4系
Order deny,allow Require all granted
Allow from all Require all granted
Deny from all Require all denied

バージョンを確認せずに設定ファイルを変更すると、思わぬエラーの原因になります。

本記事のまとめ

Apacheのバージョン確認方法を5つ紹介しました。

やりたいこと コマンド
バージョンだけ確認 httpd -v
MPMや設定ファイルパスも含めて確認 httpd -V
パッケージのリリース番号まで確認 rpm -q httpd
apachectl経由で確認 apachectl -v
外部からHTTPヘッダーで確認 curl -sI http://対象サーバー/
稼働中のバイナリパスを特定 ps aux | grep httpd | grep -v grep

普段の運用ではhttpd -vだけで十分ですが、脆弱性対応やトラブルシュートの際にはhttpd -Vrpm -qの情報が必要になります。いざという時にすぐ確認できるよう、コマンドを覚えておいてください。

Apacheのバージョン番号の読み方とサポート期限(2.4と2.5の違い)

バージョン番号を確認できても、その数字が何を意味するかを正しく読み取れないと、アップデート判断を誤ることがあります。「Apache 2.4.62」のような表記の各桁の意味と、現場で迷いがちな「2.5系がそろそろ出るのか?」という疑問もここで整理します。

表記例 意味 運用上の判断軸
Apache 2.4.62 メジャーバージョン。設定ファイルの非互換変更が入る境界 2.2 → 2.4 はアクセス制御の書式が全変更。設定ファイルを引き継いではいけない
Apache 2.4.62 マイナーバージョン。安定版は偶数(2.4)、開発版は奇数(2.3, 2.5) 奇数版は本番投入禁止。2.5系はApache公式リポジトリ内の開発ブランチで、安定リリースされていない
Apache 2.4.62 パッチバージョン。セキュリティ修正・バグ修正 パッチ更新は基本的に互換性を維持。CVE発表時はここを上げるだけで対応できる

1. Apache HTTP Serverのバージョン体系(2026年時点)

2026年5月時点で、Apache HTTP Serverの安定版は2.4系のみです。1995年に1.0が公開され、2002年に2.0、2012年に2.4が公開されて以降、メジャーバージョンの更新は止まっています。

「2.5や3.0は出ないのか?」とよく聞かれますが、Apache公式の方針として、2.4系のままパッチ・マイナーアップデートを継続する形が長期にわたって続いています。3.0や2.6(偶数の次の安定版)は、現時点で具体的なリリース予定が公表されていません。

そのため、現場で「Apache 2.5を使うべきか」と検討する必要はありません。本番環境では2.4系の最新パッチを維持するのが正解です。

2. ディストリビューションごとのApacheバージョン対応表

ディストリビューションのパッケージ版Apacheは、メジャーOSのライフサイクルに連動してパッチが供給されます。サポート期限を把握しておくと、OS移行とApacheバージョンの計画が立てやすくなります。

OS パッケージ版Apache OSサポート期限
RHEL 9 / Rocky Linux 9 / AlmaLinux 9 httpd 2.4.62系 2032年5月(フルサポート)
RHEL 10 / Rocky Linux 10 httpd 2.4.62以降 2035年(フルサポート)
Ubuntu 22.04 LTS apache2 2.4.52系(HWEで更新) 2027年4月(通常)/2032年4月(ESM)
Ubuntu 24.04 LTS apache2 2.4.58系 2029年4月(通常)/2034年4月(ESM)
RHEL 7 / CentOS 7 httpd 2.4.6系 2024年6月にEOL。現役運用は危険

3. バージョン確認後にやるべき3つのチェック

バージョン番号を取得しただけで終わらせず、以下の3点を続けて確認すると、サーバー全体の健全性チェックになります。

# 1. 稼働しているApacheバージョン $ httpd -v Server version: Apache/2.4.62 (Rocky Linux) # 2. インストール済みパッケージとビルド日(パッチ適用日の目安) $ rpm -qi httpd | grep -E "Version|Build Date|Install Date" Version : 2.4.62 Install Date: 2024年09月15日 10時30分00秒 Build Date : 2024年08月12日 00時00分00秒 # 3. 最新の利用可能パッケージ(更新があるか) $ sudo dnf check-update httpd httpd.x86_64 2.4.63-1.el9 appstream

3つ目のコマンドで何も表示されなければ、現在のApacheが最新パッチです。新しいバージョンが表示された場合は、CVE情報と照らし合わせて緊急度を判断してください。

4. Apache 2.4のEOL(サポート終了)に関する正しい理解

「Apache 2.4はいつまで使えるのか?」という質問をよく受けます。これには2つの軸があります。

Apache公式(Apache Software Foundation)の方針:2.4系は現役の唯一の安定版で、明確なEOLは公表されていません。次のメジャー版(3.0など)がリリースされ、安定運用に置き換わるまで継続される予定です
ディストリビューション側のサポート:OSのライフサイクルに連動。RHEL 7のhttpd 2.4.6はEOL済みですが、これはOSのサポート終了に伴うもので、Apache本体のEOLとは別物です

つまり、Apacheバージョンだけを見てEOL判断はできません。「ディストリビューションがそのバージョンにパッチを提供し続けているか」こそが現場での判断軸です。rpm -qi httpdのVendor行と、OSのサポート期限表を組み合わせて確認してください。

5. tomcatやNginxとのバージョン確認コマンド対応表

Webサーバー / Javaアプリケーションサーバーが同居する環境では、Apache以外のミドルウェアもまとめて確認します。バージョン確認コマンドの早見表です。

ミドルウェア バージョン確認コマンド
Apache HTTP Server httpd -v または apache2 -v
Apache Tomcat $CATALINA_HOME/bin/version.sh
Nginx nginx -v(バージョンのみ)/nginx -V(ビルド詳細)
OpenSSL(ApacheがSSLで使う) openssl version
PHP(mod_php / php-fpm) php -v

Apacheのバージョン確認と同じ要領で他のミドルウェアも把握しておくと、障害対応やセキュリティ監査の場面で初動が早くなります。

※最終更新: 2026-05-11(バージョン体系・ディストリ別サポート期限・ミドルウェア対応表を追加)

Apacheの設定ファイルを触るたびに不安を感じていませんか?

バージョン確認はサーバー管理の第一歩です。しかし、本当に重要なのはその先。脆弱性対応、アクセス制御、パフォーマンスチューニングまで、Apacheを安全に運用するには体系的な知識が必要です。
現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として20年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。