1. ホーム
  2. apache

コマンドラインにアクセスせずに実行中のApacheのバージョンを見つけるにはどうしたらいいですか?

2023-10-12 20:41:19

質問

私は、バージョンがエンコードされているファイルを見つけるか、Web 上でそれをポーリングしてそのバージョンを明らかにする方法が必要です。サーバーは、FTP を介してインストール場所を参照することはできますが、私にコマンド ライン アクセスを提供してくれないホストで実行されています。

HEAD を試しましたが、バージョン番号は報告されませんでした。

404を取得するために見つからないページを試すと、それは傍受され、サーバー情報のないストックページが返されます。サーバーが固まっていることを指しているのでしょう。

まだ近づかない...。

提案されたように PHP ファイルをアップロードしましたが、それを参照することができず、それをロードする URL パスがよくわかりません。いずれにせよ、アクセス拒否のメッセージと同じ在庫の 404 ページがたくさん表示されます。私は、サーバーがかなり堅牢に保護されていることを知っているので、いくらか安心しています。

どのように解決するのですか?

方法

ホストの80番ポートに接続し、送信する。

HEAD / HTTP/1.0

この後、キャリッジリターン+ラインフィードを2回行う必要があります。

このようなものが返ってきます。

HTTP/1.1 200 OK
Date: Fri, 03 Oct 2008 12:39:43 GMT
Server: Apache/2.2.9 (Ubuntu) DAV/2 SVN/1.5.0 PHP/5.2.6-1ubuntu4 with Suhosin-Patch mod_perl/2.0.4 Perl/v5.10.0
Last-Modified: Thu, 02 Aug 2007 20:50:09 GMT
ETag: "438118-197-436bd96872240"
Accept-Ranges: bytes
Content-Length: 407
Connection: close
Content-Type: text/html; charset=UTF-8

次に、Server: ヘッダーからapacheのバージョンを抽出することができます。

使用できる代表的なツール

Perlのフルインストールに付属するHEADユーティリティを使用することができます。 LWP ライブラリのフルインストールに付属する HEAD ユーティリティを使うこともできます。

HEAD http://your.webserver.com/

または カール ユーティリティを使用することもできます。

 curl --head http://your.webserver.com/

また、サーバーヘッダを表示できるブラウザの拡張機能を利用することもできます。 ライブ HTTP ヘッダ または ファイアバグ Firefox の場合、または フィドラー IE の場合

Windows でお困りですか?

最後に、Windows を使用していて、他に自由に使えるものがない場合、コマンド プロンプトを開き (スタート メニュー ->Run, type "cmd" and press return) 、次のように入力します。

telnet your.webserver.com 80

次に、次のように入力します(文字がエコーバックされないように注意してください)。

HEAD / HTTP/1.0

リターンを2回押すと、サーバーヘッダが表示されます。

その他の方法

cfeduke と Veynom が述べたように、サーバーは Server: ヘッダで限られた情報を返すように設定されている可能性があります。これを含む PHP スクリプトをホストにアップロードしてみてください。

<?php phpinfo() ?>

ウェブブラウザでページを要求すると、Apache のバージョンが報告されるはずです。

また、試しに PHPShell を使って、次のようなコマンドを試してみてください。

/usr/sbin/apache2 -V