MENU
Language

サーバー内に複数のwebサーバーがインストールされている場合に、どのwebサーバーを利用しているかを確認する方法(サーバーにログインできることを前提とします)

サーバー内に複数のWebサーバー(Nginx、Apache、Lighttpdなど)がインストールされている場合、どのWebサーバーが実際に稼働しているかを確認する方法を以下に説明します。

1. 実行中のプロセスを確認

稼働中のWebサーバーを確認するには、ps コマンドを使用します。

コマンド例:

ps aux | grep -E 'nginx|apache2|httpd|lighttpd'

出力例(Nginxが稼働中の場合):

root      555299  0.0  0.1  21800  6076 ?        S    Nov25   0:00 nginx: master process
systemd+  555347  0.0  0.1  22356  5416 ?        S    Nov25   0:00 nginx: worker process

出力例(Apacheが稼働中の場合):

root      12345  0.0  0.1  123456 7890 ?         S    Nov25   0:00 /usr/sbin/apache2 -k start
www-data  67890  0.0  0.1  234567 8901 ?         S    Nov25   0:00 /usr/sbin/apache2 -k start

出力例(Lighttpdが稼働中の場合):

root      45678  0.0  0.1  345678 1234 ?         S    Nov25   0:00 /usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf

2. ポートを占有しているプロセスを確認

Webサーバーは通常、ポート80(HTTP)や443(HTTPS)を使用します。それらのポートを占有しているプロセスを確認します。

コマンド例:

sudo lsof -i :80
sudo lsof -i :443

出力例(Nginxがポート80を占有している場合):

COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx    555299 root   4u  IPv4 123456      0t0  TCP *:http (LISTEN)

出力例(Apacheがポート80を占有している場合):

COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
apache2  12345 root   4u  IPv4 123456      0t0  TCP *:http (LISTEN)

3. サービスの状態を確認

systemctl コマンドを使用して、Webサーバーのサービス状態を確認します。

コマンド例:

sudo systemctl list-units --type=service | grep -E 'nginx|apache2|lighttpd'

出力例(Nginxが稼働中の場合):

nginx.service    loaded active running A high performance web server and a reverse proxy server

出力例(Apacheが稼働中の場合):

apache2.service  loaded active running The Apache HTTP Server

4. ポートへのリクエスト送信

実際にサーバーにHTTPリクエストを送信して、応答ヘッダーからWebサーバーを確認します。

コマンド例(ポート80にリクエストを送信):

curl -I http://localhost

出力例(Nginxが応答している場合):

HTTP/1.1 200 OK
Server: nginx/1.27.2

出力例(Apacheが応答している場合):

HTTP/1.1 200 OK
Server: Apache/2.4.41 (Ubuntu)

5. Webサーバーのインストール状況を確認

サーバーにインストールされているWebサーバーを確認するには、以下のコマンドを使用します。

コマンド例:

dpkg -l | grep -E 'nginx|apache2|lighttpd'

または(RHEL系の場合):

rpm -qa | grep -E 'nginx|httpd|lighttpd'

出力例:

ii  nginx         1.27.2    A high performance web server and a reverse proxy server
ii  apache2       2.4.41    Apache HTTP Server

6. 設定ファイルの確認

設定ファイルの存在で使用中のWebサーバーを推測できます。

  • Nginxの設定ファイル: /etc/nginx/nginx.conf
  • Apacheの設定ファイル: /etc/apache2/apache2.conf
  • Lighttpdの設定ファイル: /etc/lighttpd/lighttpd.conf

コマンド例:

ls /etc/nginx/nginx.conf
ls /etc/apache2/apache2.conf
ls /etc/lighttpd/lighttpd.conf

まとめ

  1. 実行中のプロセスを確認(ps aux
  2. ポートを占有しているプロセスを確認(lsof
  3. サービスの状態を確認(systemctl
  4. サーバーからの応答を確認(curl
  5. インストール状況や設定ファイルを確認(dpkg または rpm

これらの方法で、稼働中のWebサーバーを特定できます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

AIアーティスト | エンジニア | ライター | 最新のAI技術やトレンド、注目のモデル解説、そして実践に役立つ豊富なリソースまで、幅広い内容を記事にしています。フォローしてねヾ(^^)ノ

コメント

コメントする

目次