2009-04-08 2 views
4

Как лучше всего выяснить, где и где Apache установлен на машине Windows?Как найти, где установлен httpd.exe Apache?

Я пишу скрипт, который использует установленный apache, но настраивает его собственный конфигуратор & server-root, и я не хочу его жестко кодировать и не устанавливать явно пользователем (если это необходимо).

Я попытался найти реестр, но не нашел ничего полезного.

Обновление для этих проводок путей по умолчанию

На моей машине, это было в C:/Program Files/Apache Software Foundation/apache2.2. И если бы у меня была 64-разрядная Vista, она, вероятно, была бы в разделе «Program Files (x86)». И если на компьютере нет английской ОС, это еще хуже.

Обход

Guess я должен проверить% PROGRAMFILES% для Apache 2.0 или путь по умолчанию 2.2, а затем падают обратно к подсказке. Хорошо бы прочитать реестр и узнать, где он находится.

Конечная нота

Apache не был установлен на 'все', но только текущий пользователь. Это затрудняет поиск, поскольку нет никаких сервисов и разделов/папок реестра.

+0

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

+0

Работает, если httpd.exe находится на пути, но я не уверен, что это так? (Будет проверять завтра) – Macke

+0

Это не путь, так что это не сработает. – Macke

ответ

1

Я, очевидно, установил Apache только для меня (текущего пользователя), а не для всех пользователей на моей машине, поэтому не имеет ключа реестра.

Если установлен для всех пользователей, ключ реестра здесь:

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

В Windows он устанавливается в C:/Program Files/Apache Group/Apache2/bin/apache.exe

Остальной каталогов (конф, бревенчатый, док-корень, и т.д.) находятся в C:/Программные файлы/Apache Group/Apache2

+1

Да, если вы выполните маршрут установки Qick при установке Apache, это будет по умолчанию. но я думаю, что это не решение проблемы марша. –

+0

Точно, это не всегда там, только по умолчанию. В моем случае я забыл установить его для всех пользователей. – Macke

1

Не совсем ответ, но если бы я был вами, я бы использовал только путь по умолчанию (% PROGRAMFILES% \ Apache Group \ Apache2 \ bin \ Apache.exe) или пару относительно безопасные пути по умолчанию и запрос, если исполняемый файл не был найден.

В противном случае может возникнуть совершенно неожиданная установка. Я ненавижу программы, которые «слишком умны».

+0

Похоже, это единственный способ. Ключ реестра в документе не содержит по умолчанию ServerRoot, как указано. : - | – Macke

+0

Недостаточно, см. Мой собственный ответ на правильное решение. Найти что-то _and_ подсказка в любом случае - хорошая идея, хотя, если дело доходит до этого.(В любом случае, этот установщик был довольно ограниченным по масштабу ...) – Macke

1

Поиск httpd.exe в реестре под HKLM \ Services \ CurrentControlSet.

Смежные вопросы