Zgubiony plik httpd.conf znajduje się w Apache [zamknięty]

510

Jak mogę znaleźć lokalizację mojego httpd.confpliku?

Używam serwera Ubuntu Linux z Amazon Web Services EC2 (Elastic Compute Cloud) i nie mogę znaleźć konfiguracji Apache.

Shalin Shah
źródło
2
Z jakiego systemu operacyjnego korzystasz? Jak zainstalowałeś Apache? Z której wersji Apache korzystasz? Są to wszystkie rzeczy, które powinieneś uwzględnić, gdy zostanie to przeniesione we właściwe miejsce (prawdopodobnie SeverFault).
gpojd
63
Czy nie należy tego migrować do superuser.com zamiast zamykać?
trejder
34
Oto szybki sposób:find / -name httpd.conf
prograhammer
15
W przypadku red hat zwykle: /etc/httpd/conf/httpd.conf access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/…
danwild
2
Oto kolejny szybki sposób:locate httpd.conf
Sudip Bhandari

Odpowiedzi:

649

Uzyskaj ścieżkę uruchamiania Apache

$ ps -ef | grep apache
apache   12846 14590  0 Oct20 ?        00:00:00 /usr/sbin/apache2

Dołącz -Vargument do ścieżki

$ /usr/sbin/apache2 -V | grep SERVER_CONFIG_FILE
-D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"

Odniesienie:
http://commanigy.com/blog/2011/6/8/finding-apache-configuration-file-httpd-conf-location

zwięźle
źródło
196
W niektórych systemach operacyjnych otrzymasz ścieżkę względną pliku conf: -D ​​SERVER_CONFIG_FILE = "apache2.conf" Możesz uruchomić "/ usr / sbin / apache2 -V | grep HTTPD_ROOT", aby znaleźć katalog główny. Dane wyjściowe: „-D HTTPD_ROOT =” / etc / apache2 / apache2.conf ”Ścieżka bezwzględna będzie wtedy:„ /etc/apache2/apache2.conf ”
Mayank Jaiswal
6
Nie działa na moim współdzielonym hoście, ponieważ ps pokazuje tylko zadania działające jak ja. Musiałem po prostu spróbować uruchomić „httpd -V” i „apache2ctl -V”, jak sugeruje Rich Bower.
John Pankowicz,
6
Jestem na Ubuntu 14.04 z Apache2 i sudo /usr/sbin/apache2 -V | grep SERVER_CONFIG_FILEdaje mi kilka błędów ostrzegawczych, Invalid Mutex directorywięc właściwym poleceniem jestsudo apachectl -V | grep SERVER_CONFIG_FILE
NineCattoRules
4
Nie działało dla mnie na Ubuntu 16.04. Zwraca tylko PID grep.
posfan12
210

Zobacz http://wiki.apache.org/httpd/DistrosDefaultLayout, aby omówić, gdzie można znaleźć pliki konfiguracyjne httpd Apache na różnych platformach, ponieważ mogą się one różnić w zależności od wersji i wersji na platformę. Najczęstszą odpowiedzią jest jednak / etc / apache / conf lub / etc / httpd / conf

Zasadniczo odpowiedź można ustalić, uruchamiając polecenie:

httpd -V

(To duże V). Lub w systemach, w których httpd może się zmienićapache2ctl -V

Zwróci to różne szczegóły dotyczące budowy i konfiguracji httpd, w tym domyślną lokalizację głównego pliku konfiguracyjnego.

Jeden z wierszy wyniku powinien wyglądać następująco:

-D SERVER_CONFIG_FILE = "conf / httpd.conf"

co w połączeniu z linią:

-D HTTPD_ROOT = "/ etc / httpd"

poda pełną ścieżkę do domyślnej lokalizacji pliku konfiguracyjnego

Rich Bowen
źródło
14
Dla mnie to, co zadziałało, to apache2ctl -Vpolecenie i szukanie ścieżki w liście wymienionej po.
jamescampbell
1
tak, apache2ctlnie jest przemianowaną wersją httpd, to różne nazwy tej samej aplikacji w systemie operacyjnym opartym odpowiednio na Debianie i RedHat
vladkras
5
Dostaję the command httpdnie znaleziono.
Black
1
Spróbuj „apachectl -V”, jeśli „httpd -V” nie działa
Somnath Pawar
2
Na Ubuntu możesz mieć plik apache2.conf, a nie plik httpd.conf. Plik znajduje się w katalogu / etc / apache2
prasoon