web-dev-qa-db-ja.com

DebianマシンにインストールされているApacheのバージョン

DebianマシンにインストールされているApacheのバージョンを確認するにはどうすればいいですか?

これを行うためのコマンドはありますか?

302
pindiwala

Apachectl -Vを試してください。

$ apachectl -V
Server version: Apache/2.2.9 (Unix)
Server built:   Sep 18 2008 21:54:05
Server's Module Magic Number: 20051115:15
Server loaded:  APR 1.2.7, APR-Util 1.2.7
Compiled using: APR 1.2.7, APR-Util 1.2.7
... etc ...

うまくいかない場合は、Sudoを付けてコマンドを実行します。

403
Todd Gamblin

これは私のDebianにも当てはまります。

$ /usr/sbin/Apache2 -v
141
Elzo Valugi

新しいDebianの場合は、Apache2ctl-vまたはApache2 -vを使用する必要があります。 Ubuntuディストリビューション.

Apache:/etc/Apache2# Apache2ctl -v
Server version: Apache/2.2.16 (Debian)
Server built:   May 12 2011 11:58:18

あるいは、Apache2 -Vを使って詳細情報を入手することもできます。

Apache2 -V
Server version: Apache/2.2.16 (Debian)
Server built:   May 12 2011 11:58:18
Server's Module Magic Number: x
Server loaded:  APR 1.4.2, APR-Util 1.3.9
Compiled using: APR 1.2.12, APR-Util 1.3.9
Architecture:   64-bit
Server MPM:     Worker
  threaded:     yes (fixed thread count)
    forked:     yes (variable process count)
Server compiled with....
31
eaykin

私は Red Hat Linux を使用していて、次のコマンドが動作します。

httpd -V
25
Dinesh

このコマンドは、使用しているLinuxのバージョンがどのようにApacheサーバーを命名したかによって異なります。

DebianとMac OSの場合

apachectl -v

Red HatとAmazonのEC2 Linuxでは、以下を使用します。

httpd -v

Linuxの他のバージョンで試してみてください。

Apache2 -v

2つの異なるフラグを使用できます。

-v # gives you the version number
-V # gives you the compile settings including version number.

User3786265のようにフルディレクトリでコマンドを実行したいが、Apacheの場所がわからない場合は、whereisコマンドを使用します。

whereis httpd
24
Keshav Dial

Sudoで試してみる

apachectl -V
-bash: apachectl: command not found

Sudo apachectl -V
Server version: Apache/2.4.6 (Debian)
Server built:   Aug 12 2013 18:20:23
Server's Module Magic Number: 20120211:24
Server loaded:  APR 1.4.8, APR-UTIL 1.5.3
Compiled using: APR 1.4.8, APR-UTIL 1.5.2
Architecture:   32-bit
Server MPM:     prefork
  threaded:     no
  forked:     yes (variable process count)
Server compiled with....
bla bla....
15
shiva

私はあなたがあなたがバイナリまたはソースを持っているインストールの種類を確かめなければならないと思います。どのバイナリパッケージがインストールされているかを確認するには、root権限で次のコマンドを実行します。

dpkg -l |grep Apache2

結果は次のようになります。

dpkg -l |grep Apache2
ii  Apache2                               2.4.10-10+deb8u8                      AMD64        Apache HTTP Server
ii  Apache2-bin                           2.4.10-10+deb8u8                      AMD64        Apache HTTP Server (modules and other binary files)
ii  Apache2-data                          2.4.10-10+deb8u8                      all          Apache HTTP Server (common files)
ii  Apache2-doc                           2.4.10-10+deb8u8                      all          Apache HTTP Server (on-site documentation)

あなたが実行することができるバージョンを見つけるために:

Apache2ctl -V |grep -i "Server version"

結果は以下のようになるはずです。サーバーのバージョン:Apache/2.4.10(Debian)

11

パッケージマネージャを直接使うこともできます。

dpkg -l | grep Apache

これはバージョン番号だけに焦点を当てているわけではありませんが、検索範囲が広がるため、モジュールバージョンなどの他の有用な情報が得られます。

11
Balmipour

私にとっては、これは Debian 6 (Squeeze)で動作します。

Linux www809 2.6.26-2-xen-686#1 SMP水9月21日09時56分47秒UTC 2011 i686 GNU/Linux

私は正しい道をたどらなければなりませんでした:

/usr/local/Apache/bin** $ **./apachectl -v

./apachectl:71行目:ulimit:ファイルを開く:制限を変更できない:操作が許可されていません
サーバーのバージョン:Apache /2.2.21(UNIX)
サーバービルド:2011年12月17日19:57:53

6
merlinuwe
  1. apachectl -Vまたはapachectl -vを使用できます。どちらもApacheのバージョン情報を返します。

        xgqfrms:~/workspace $ apachectl -v
    
        Server version: Apache/2.4.7 (Ubuntu)
        Server built:   Jul 15 2016 15:34:04
    
    
        xgqfrms:~/workspace $ apachectl -V
    
        Server version: Apache/2.4.7 (Ubuntu)
        Server built:   Jul 15 2016 15:34:04
        Server's Module Magic Number: 20120211:27
        Server loaded:  APR 1.5.1-dev, APR-UTIL 1.5.3
        Compiled using: APR 1.5.1-dev, APR-UTIL 1.5.3
        Architecture:   64-bit
        Server MPM:     prefork
          threaded:     no
            forked:     yes (variable process count)
        Server compiled with....
         -D APR_HAS_SENDFILE
         -D APR_HAS_MMAP
         -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
         -D APR_USE_SYSVSEM_SERIALIZE
         -D APR_USE_PTHREAD_SERIALIZE
         -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
         -D APR_HAS_OTHER_CHILD
         -D AP_HAVE_RELIABLE_PIPED_LOGS
         -D DYNAMIC_MODULE_LIMIT=256
         -D HTTPD_ROOT="/etc/Apache2"
         -D SUEXEC_BIN="/usr/lib/Apache2/suexec"
         -D DEFAULT_PIDLOG="/var/run/Apache2.pid"
         -D DEFAULT_SCOREBOARD="logs/Apache_runtime_status"
         -D DEFAULT_ERRORLOG="logs/error_log"
         -D AP_TYPES_CONFIG_FILE="mime.types"
         -D SERVER_CONFIG_FILE="Apache2.conf"
  2. Apache2 -VApache2 -vを使うのがもっと好きかもしれません。覚えやすいですね!

        xgqfrms:~/workspace $ Apache2 -v
    
        Server version: Apache/2.4.7 (Ubuntu)
        Server built:   Jul 15 2016 15:34:04
    
    
        xgqfrms:~/workspace $ Apache2 -V
    
        Server version: Apache/2.4.7 (Ubuntu)
        Server built:   Jul 15 2016 15:34:04
        Server's Module Magic Number: 20120211:27
        Server loaded:  APR 1.5.1-dev, APR-UTIL 1.5.3
        Compiled using: APR 1.5.1-dev, APR-UTIL 1.5.3
        Architecture:   64-bit
        Server MPM:     prefork
          threaded:     no
            forked:     yes (variable process count)
        Server compiled with....
         -D APR_HAS_SENDFILE
         -D APR_HAS_MMAP
         -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
         -D APR_USE_SYSVSEM_SERIALIZE
         -D APR_USE_PTHREAD_SERIALIZE
         -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
         -D APR_HAS_OTHER_CHILD
         -D AP_HAVE_RELIABLE_PIPED_LOGS
         -D DYNAMIC_MODULE_LIMIT=256
         -D HTTPD_ROOT="/etc/Apache2"
         -D SUEXEC_BIN="/usr/lib/Apache2/suexec"
         -D DEFAULT_PIDLOG="/var/run/Apache2.pid"
         -D DEFAULT_SCOREBOARD="logs/Apache_runtime_status"
         -D DEFAULT_ERRORLOG="logs/error_log"
         -D AP_TYPES_CONFIG_FILE="mime.types"
         -D SERVER_CONFIG_FILE="Apache2.conf"
5
xgqfrms

コマンド "httpd -V"と "apachectl -V"を実行しようとしましたが、実行できず、エラーが発生しました。

-ksh:php:見つかりません[そのようなファイルまたはディレクトリはありません]

それから私は別の方法を試しました。私は自分のサーバーのApacheディレクトリに行き、それからコマンドを実行しようとしました:

./apachectl -v

これは私のために働き、出力を返しました:

Server version: Apache/2.2.20 (Unix)
Server built:   Sep  6 2012 17:22:16

これが役に立つことを願っています。

5
RDB

Debianベースのシステムにパッケージ(Apacheを含む)がインストールされているバージョンを確認するもう1つの方法は、次のとおりです。

apt-cache policy <package_name>

例えばApacheの場合

apt-cache policy Apache2

これは次のようになります(Installed行を見てください)。

$ apt-cache policy Apache2
Apache2:
  Installed: (none)
  Candidate: 2.2.22-1ubuntu1.9
  Version table:
     2.2.22-1ubuntu1.9 0
        500 http://hk.archive.ubuntu.com/ubuntu/ precise-updates/main AMD64 Packages
        500 http://security.ubuntu.com/ubuntu/ precise-security/main AMD64 Packages
     2.2.22-1ubuntu1 0
        500 http://hk.archive.ubuntu.com/ubuntu/ precise/main AMD64 Packages
5
Raptor

Apacheのいくつかのインストールでは、(Oracleのそれをパッケージ化したものと考えています。OHS)、-Vフラグを理解していません。また、見つからないライブラリエラーが発生することなく直接起動することもできません。

最も簡単な方法は、httpdバイナリとgrepでstringsコマンド(binutilsの一部)をバージョンに似た文字列として使用することです。たとえば、httpdバイナリが/foo/barディレクトリの下にあるとします。

$ strings /foo/bar/httpd  | grep 2.2
GLIBC_2.2.5
Oracle-HTTP-Server/2.2.22 (Unix)
Success_Accepted_202
202 Accepted

ほとんどのバイナリ(全部ではありません)は静的文字列としてそれらのバージョン(少なくともそれらのメジャーバージョン)を含んでいます。これは私がバージョンを手に入れようとしている方法です(あるいはバイナリのヘルプメッセージが実際に現実のものと一致していることを裏付けるものです)。

3
luis.espinal

私にとってapachectl -Vは動作しませんでしたが、apachectl fullstatusは私に私のバージョンを与えてくれました。

3
pindiwala

または、それほど直接的ではありません。

nmap -A localhost -p 80

2
Chad

PHPがある場合は、シェルに/ usr/sbin/Apache2 -vと入力するのが最善かつ最速の方法です。あなたのサーバーでも、あなたは素早いプログラムのステップでApacheバージョン(そしてもっと多くの情報)を集めることに興味があります。

ApacheのWebルートフォルダ(または好きなもの)にinfo.phpファイルを作成して、その中に次のように記述するだけです。

<?php
    phpinfo();
?>

yoursite.com/info.php(またはローカルマシンの場合はlocalhost/info.php)に進んでください。

ApacheのバージョンはPHP変数のセクションにあります。ここに例があります。

phpinfo()の例ダンプページ

また、これらの手順はPHPの統合がある任意のWebサーバーに明らかに適用されるので注意してください。開発中に便利です(本番環境では必ず削除してください)。

2
Defrag
dlocate -s Apache2 | grep '^Version:'
1
agc