2009-04-08 15 views
4

WindowsマシンにApacheがインストールされているかどうかを確認するにはどうすればよいですか?Apacheのhttpd.exeがインストールされている場所を見つける方法は?

私は、インストールされたApacheを使用するスクリプトを作成していますが、それ自身の設定を&サーバルートに設定しています。ハードコードしたり、必要に応じて明示的に設定したりしないでください。

レジストリを検索しようとしましたが、役に立たないものは見つかりませんでした。

それらの投稿デフォルトパスの更新

私のマシン上で、それがCにあった:/プログラムファイル/ Apache Software Foundationの/ Apache2.2。そして、もし私がVista 64ビットを持っていたら、それはおそらく 'Program Files(x86)'の下にあるだろう。また、コンピュータに英語のOSがない場合は、さらに悪化します。

回避策

の推測では、私はその後、Apacheの2.0または2.2のデフォルトのパスを%PROGRAMFILES%チェックバックプロンプトにフォールする必要があります。レジストリを読んで、正確にどこにあるのかを知ることは良いことです。

決勝ノート

Apacheは「みんなが、現在のユーザーに対してのみインストールされていません。そのため、そこに指すサービスやレジストリキー/フォルダが存在しないため、見つけるのが少し難しくなります。それがCにインストールされているWindows上で

+0

http://stackoverflow.com/questions/304319/is-there-an-equivalent-of-which-on-windows – vartec

+0

httpd.exeがパスにある場合は機能しますが、わかりません。 (明日チェックします) – Macke

+0

これはパスにないので、これは動作しません。 – Macke

答えて

1

私は明らかに私のマシン(現在のユーザ)のためだけにApacheをインストールしました。それは私のマシンのすべてのユーザではないため、レジストリキーはありません。

すべてのユーザーに対してインストールされている場合、レジストリキーはここにある:HKLM \ Servicesの\ CURRENTCONTROLSETの下のレジストリでhttpd.exeため

HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Apache\2.2.xx\ServerRoot 
0

:/プログラムファイル/ Apacheグループ/ Apache2の/ binに/ Apache.exe

ディレクトリの残り(confに、ログ、ドキュメントルートなど)は、Cの下にあります:/プログラムファイル/ Apache Group/Apache2

+1

ええ、ApacheをインストールするときにQickインストールルートに従えば、これはデフォルトで実行されます。しかし、私はこれがマルクの問題に対する解決策ではないと思う。 –

+0

正確には、常にデフォルトでのみ終了します。私の場合は、すべてのユーザー用にインストールするのを忘れていました。 – Macke

1

私の場合は、デフォルトのパス(%PROGRAMFILES%\ Apacheグループ\ Apache2 \ bin \ Apache.exe)を使用するか、比較的安全な既定のパス、および実行可能ファイルが見つからない場合のプロンプトが表示されます。

そうしないと、予期しないインストールが発生する可能性があります。私は "あまりにもスマート"なプログラムが嫌いです。

+0

これが唯一の方法だと思われます。 doc内のレジストリキーには既定のServerRootが含まれていません。 : - | – Macke

+0

十分ではありません、適切な解決方法はここに私自身の答えを参照してください。とにかく何かを見つけ出すことは良い考えです。(このインストーラは、とにかく範囲が限られていました...) – Macke

1

検索。