Verlorene httpd.conf-Datei gefunden Apache [geschlossen]

510

Wie finde ich heraus, wo sich meine httpd.confDatei befindet?

Ich verwende einen Ubuntu Linux-Server über Amazon Web Services EC2 (Elastic Compute Cloud) und kann meine Apache-Konfiguration nicht finden.

Shalin Shah
quelle
2
Welches Betriebssystem verwenden Sie? Wie haben Sie Apache installiert? Welche Version von Apache verwenden Sie? Dies sind alles Dinge, die Sie einschließen sollten, wenn dies an die richtige Stelle verschoben wird (wahrscheinlich SeverFault).
Gpojd
63
Sollte dies nicht auf superuser.com migriert werden, anstatt es zu schließen?
Trejder
34
Hier ist ein schneller Weg:find / -name httpd.conf
Programmierer
15
Für Red Hat normalerweise: /etc/httpd/conf/httpd.conf access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/…
danwild
2
Hier ist ein weiterer schneller Weg:locate httpd.conf
Sudip Bhandari

Antworten:

649

Holen Sie sich den Pfad zum Ausführen von Apache

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

Fügen Sie -Vdem Pfad ein Argument hinzu

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

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

squiguy
quelle
196
In einigen Betriebssystemen erhalten Sie den relativen Pfad der conf-Datei: -D SERVER_CONFIG_FILE = "apache2.conf" Sie können "/ usr / sbin / apache2 -V | grep HTTPD_ROOT" ausführen, um den Stamm zu finden. Ausgabe: "-D HTTPD_ROOT =" / etc / apache2 / apache2.conf "Der absolute Pfad lautet dann:" /etc/apache2/apache2.conf "
Mayank Jaiswal
6
Funktioniert nicht auf meinem freigegebenen Host, da ps nur Aufgaben anzeigt, die als ich ausgeführt werden. Ich musste einfach versuchen, "httpd -V" und "apache2ctl -V" auszuführen, wie Rich Bower vorschlägt.
John Pankowicz
6
Ich bin auf Ubuntu 14.04 mit Apache2 und sudo /usr/sbin/apache2 -V | grep SERVER_CONFIG_FILEgebe mir einige Invalid Mutex directorysudo apachectl -V | grep SERVER_CONFIG_FILE
Warnfehler
4
Hat bei Ubuntu 16.04 nicht funktioniert. Es wird nur die PID von grep zurückgegeben.
Posfan12
210

Unter http://wiki.apache.org/httpd/DistrosDefaultLayout finden Sie Informationen dazu, wo sich Apache-httpd-Konfigurationsdateien auf verschiedenen Plattformen befinden, da dies von Release zu Release und von Plattform zu Plattform variieren kann. Die häufigste Antwort lautet jedoch entweder / etc / apache / conf oder / etc / httpd / conf

Im Allgemeinen können Sie die Antwort ermitteln, indem Sie den folgenden Befehl ausführen:

httpd -V

(Das ist eine Hauptstadt V). Oder vielleicht auf Systemen, auf denen httpd umbenannt wirdapache2ctl -V

Dadurch werden verschiedene Details zum Erstellen und Konfigurieren von httpd zurückgegeben, einschließlich des Standardverzeichnisses der Hauptkonfigurationsdatei.

Eine der Ausgabezeilen sollte folgendermaßen aussehen:

-D SERVER_CONFIG_FILE = "conf / httpd.conf"

welche, kombiniert mit der Linie:

-D HTTPD_ROOT = "/ etc / httpd"

gibt Ihnen einen vollständigen Pfad zum Standardspeicherort der Konfigurationsdatei

Rich Bowen
quelle
14
Was für mich funktioniert hat, ist der apache2ctl -VBefehl und die Suche nach dem Pfad in dem, was danach aufgeführt ist.
Jamescampbell
1
yep, apache2ctlwird nicht umbenannt Version httpd, ist es verschiedene Namen derselben aplication auf Debian- und RedHat-basierten OS bzw.
vladkras
5
Ich bekomme the command httpdwurde nicht gefunden.
Black
1
Versuchen Sie "apachectl -V", wenn "httpd -V" nicht funktioniert
Somnath Pawar
2
Unter Ubuntu haben Sie möglicherweise die Datei apache2.conf und keine Datei httpd.conf. Sie finden die Datei unter / etc / apache2 Verzeichnis aufgeführt
prasoon