Frage Ubuntu Apache: httpd.conf oder apache2.conf?


Welche dieser beiden Dateien sollte ich verwenden, um Apache zu konfigurieren?

Das httpd.conf ist leer, während apache2.conf ist nicht.

Das verwirrt mich!


41
2018-04-02 15:22


Ursprung




Antworten:


Die httpd.conf wurde für Benutzerkonfigurationen entwickelt. Sie sollten die apache2.conf nicht bearbeiten, da sie möglicherweise durch zukünftige Upgrades aktualisiert wird.

Eine weitere Möglichkeit besteht darin, Ihre benutzerdefinierte Konfiguration einfach in /etc/apache2/conf.d zu speichern. Alle Dateien in diesem Verzeichnis sind ebenfalls enthalten.


45
2018-04-02 15:28



Ich habe keine Datei namens apapche2.conf - Doug Molineux


Dies sind nicht Ihre einzigen Optionen. Unter Ubuntu / Debian verarbeitet Apache auch alle Dateien in /etc/apache2/sites-enabled/ (welche sollte Symlinks zu Dateien in sein sites-available/ Verzeichnis, verwaltet von der a2ensite und a2dissite Programme)

Sie sollen diese Verzeichnisse für verwenden VirtualHosts.


18
2018-04-02 15:44



Das ist die richtige Antwort! und auch die ports / mods-verfügbaren Konfigurationsdateien, wenn Sie Ihre Antwort näher erläutern möchten - Sudhi


apache2.conf enthält httpd.conf:

a@test$:/etc/apache2$ cat apache2.conf | grep httpd.conf 
Include /etc/apache2/httpd.conf

Ich denke, dass httpd.conf veraltet ist, aber nur für konservative Leute da gelassen wird, damit sie sie finden ... :)

BEARBEITEN:

Nachdem ich Robs Antwort gelesen hatte, machte ich einen besseren Grep:

a@test:/etc/apache2$ grep -C 1 httpd.conf apache2.conf 
# Include all the user configurations:
Include /etc/apache2/httpd.conf

Benutzerkonfigurationen ist es ...


5
2018-04-02 15:28



+1 "httpd.conf ist veraltet" - feeela


Die Apache Software Foundation veröffentlicht viele Bits von Software, von denen eine ein Webserver genannt wird httpd. Die httpd-Projektquellen umfassen unter anderem ein httpd.conf Beispielkonfigurationsdatei, die standardmäßig in installiert wird /usr/local/etc/httpd oder /etc/httpd. Sie finden httpd als solche auf den meisten Systemen.

Vor langer Zeit und weit entfernt entschied sich jedoch jemand in der Debian GNU / Linux-Distribution, den Namen der Software innerhalb dieser Distribution zu ändern httpd zu apache2. So finden Sie auf einem Debian-System eine Konfigurationsdatei namens apache2.conf in einem Verzeichnis mit dem Namen /etc/apache2. Ich weiß nicht, wer das getan hat oder warum, aber es ist eine beständige Quelle der Verwirrung auf Augenhöhe mit dem Aufruf von Windows "Microsoft" oder ESXi "VMware". Auf Debian basierende Distributionen wie Ubuntu erben diese Fremdartigkeit. Noch seltsamer, sie enthalten dann eine Datei /etc/apache2/httpd.conf welches ist Included aus apache2.conf in die Benutzer benutzerdefinierte Konfiguration platzieren können.

Die Antwort ist also, wenn Sie sich auf einem Debian-basierten System befinden, werden Sie Ihr Gehirn dazu bringen, Dinge so zu machen, wie Sie es von Debian wollen. Ansonsten tust du das normalerweise so, wie es das Upstream-httpd-Projekt tut.


1
2018-03-24 01:23





Apache 2.4

Verwenden Sie:

Fügen Sie benutzerdefinierte Konfigurationen hinzu /etc/apache2/conf-available/{name}.conf

Aktivieren / Deaktivieren Sie Ihre Konfiguration mit sudo a2enconf {name}oder sudo a2disconf {name}.

(Starten Sie dann den apache2-Dienst neu.)

Verwenden Sie nicht:

httpd.conf ist veraltet und Sie sollten es nicht mehr sehen - wenn Sie dies tun, lassen Sie es leer wie installiert.

apache2.conf ist noch installiert, aber lassen Sie es in Ruhe, wenn Sie Apache sauber / einfach aktualisieren möchten.

-

Alles, was Sie in einer 'globalen' Apache-Konfiguration sehen, kann wie oben beschrieben unter Ihrer benutzerdefinierten Konfiguration hinzugefügt / überschrieben werden.

Mehr: https://stackoverflow.com/a/11687212/503621


1
2018-03-14 22:29





Ob apache2.conf ist nicht leer, und httpd.conf ist leer, sollten Sie wahrscheinlich verwenden apache2.conf ;-)

Aber ich nehme an, dass das eine das andere einschließt (Und das eine wird ausschließlich aus Gründen der Rückwärtskompatibilität gehalten)- Also, es sollte sich nicht viel ändern.


Trotzdem, wenn du etwas hinzufügen willst, wie ein neues VirtualHost : Gibt es kein anderes Unterverzeichnis, in das Sie Ihre Datei stellen könnten, und haben Sie es eingeschlossen?

Es wäre wahrscheinlich eine bessere Lösung: Sie würden die Standarddatei nicht ändern - was die Aktualisierung vereinfachen würde.


0
2018-04-02 15:27



Wie von Pascal erwähnt, sollten Sie, wenn Sie einen neuen VirtualHost hinzufügen möchten, unter sites-available eine neue Datei hinzufügen und diese dann in Sites mit dem Befehl a2ensite aktivieren. help.ubuntu.com/6.06/ubuntu/serverguide/C/httpd.html - ccheneson


Öffnen Sie einfach apache2.conf und schauen Sie sich den Inhalt an:

Include /etc/apache2/mod-enabled/*.conf
Include /etc/apache2/httpd.conf

Wenn Sie also Ihre eigene Konfiguration hinzufügen möchten, fügen Sie sie zu httpd.conf hinzu und apache2.conf wird sie automatisch erhalten.

Wie andere sagen, kann apache2.conf maschinell erzeugt werden und es ist besser, es nicht zu berühren.

Für weitere Informationen verwendet Ubuntu im Allgemeinen apache2.conf und Centos verwendet httpd.conf. Alle diese Dateien hängen davon ab, welches Betriebssystem Sie haben.


0
2018-03-24 01:12





Um den Namen und den Speicherort der Konfigurationsdatei zu finden, müssten Sie:

1) Suche wie der Prozess aufgerufen wird, in diesem Fall mit dem Apache-Benutzer arbeiten:

ps -ef | grep apache

(In diesem Beispiel gibt Folgendes zurück: httpd)

2) Zeige die Variablen, die von der Binärdatei verwendet werden:

httpd -V | grep 'HTTPD_ROOT' && httpd -V | grep 'SERVER_CONFIG_FILE'

Extrahiert und Screenshots unter: http://www.sysadmit.com/2016/12/linux-apache-donde-esta-httpdconf-apache2conf.html


-2
2017-12-26 18:32



Hallo, es scheint mir, dass Sie eine bereits beantwortete Frage beantwortet haben, eine, die schon vor Jahren beantwortet wurde. Darüber hinaus hilft Ihre Lösung dem ursprünglichen Fragesteller nicht, das Problem zu beheben. Es wird empfohlen, diese Konfigurationsdatei zu verwenden. - M. Glatki