Frage Namenskonventionen: apachectl und configuration: Glaubst du, das ist richtig?


Das Stapelscript zum Neustart des httpd-Servers heißt apache2. Apache ist eine Gruppe von Freiwilligen, die viel mehr tun als nur einen http-Server. Aufruf des Skripts apache2 (apachectl ist apache2ctl und so weiter) ist sehr, sehr restriktiv. Wie wäre es damit, alles "homogen" zu halten? Die Konfigurationsdatei ist auf jeder Distribution httpd.conf. Nicht in Ubuntu. Und eine Menge Zeug wie die Apache "httpd Server" Konfiguration / Installation. Was ist der Punkt?


0
2018-03-31 13:23


Ursprung




Antworten:


Ich denke, es gibt einen Fall für eine Namensänderung. Aber der historische Grund dafür, Apache zu nennen, ist noch stärker.

Dies ist eines dieser Dinge, die Sie nicht ändern können, ohne eine Menge Leute zu verärgern.

Ubuntu könnte schon vor Jahren eine solche Konvention gestartet haben, oder vielleicht von den Debian-Leuten. Fakt ist aber, dass jetzt jeder diese Konvention in ubuntusphere kennt. In redshatsphere ist das zum Beispiel anders. Keine von beiden kann ihre Konvention ändern, da sie Skripte von Drittanbietern, Überwachungswerkzeuge, Watchdogs und andere nicht so gut geschriebene Sachen durchbrechen würde; ganz zu schweigen von Stress und Verwirrung im Bereich der IT-Leute, die nicht so sehr darauf warten, die Release-Notes zu lesen.

Das ist nur das Leben in der Stadt ;-)


1
2018-03-31 14:30



Debian Leute benutzen httpd.conf auch. Sie haben eine komplexere (aber wesentlich evolutivere) Standardkonfiguration erstellt, aber das ist es httpd.conf... - Olivier Pons


Während die Apache Software Foundation eine Reihe von Tools entwickelt, ist das Flaggschiff-Projekt immer noch der Apache-Webserver. Es wird wahrscheinlich ein relativ kleiner Teil der Bemühungen jetzt. Die anderen Projekte haben andere Namen und werden mit diesen Namen installiert.

Debian / Ubuntu verwenden http.conf als Basiskonfigurationsdatei. Dies wird um Include-Mechanismen erweitert, um ein flexibleres modulares Konfigurationssystem bereitzustellen. Dies ermöglicht Konfigurationsdateien mit hoher Kohäsion und minimaler Kopplung.

Ein ähnliches Argument würde für die Installation von ubuntu-minimal gelten, das nach Ihrer Konvention host-minimal oder server-minimal sein sollte. Ich glaube, ubuntu-minimal ist eine bessere Konvention.

EDIT: Die Verteilung muss den kleinsten gemeinsamen Nenner unterstützen (einzelne Konfigurationsdatei). Sie haben die Konfigurationsdatei gut aufgeteilt, so dass sie sich leicht in Umgebungen aufteilen lässt, in denen Probleme in ihrer Konfiguration wie Debian / Ubuntu getrennt werden können. Sie unterstützen auch die Verwendung von Include-Dateien, so dass Benutzer ihre eigene Aufteilung vornehmen können, wenn sie dies wünschen.

Die Verwendung einer einzigen http.conf-Datei für mehrere virtuelle Hosts ist anfällig für Fehler, bei denen Änderungen am falschen virtuellen Host vorgenommen werden. Es ist auch schwierig, einen bestimmten vhost zu deaktivieren. Die Verwendung der Split-Konfiguration reduziert die Wahrscheinlichkeit von Fehlern und macht Dinge wie das Deaktivieren, Aktivieren oder Hinzufügen von Vhosts relativ trivial. Eine Standard-Split-Konfiguration erleichtert Administratoren den Wechsel von einem System zu einem anderen.

Wenn Sie die ursprüngliche http.conf-Datei als leere eingeschlossene Datei beibehalten, werden zwei Dinge erreicht:

  • Es zeigt an, dass der Server dort ist und die Konfiguration an anderer Stelle aufgeteilt / verschoben wurde.
  • Ermöglicht Tools, die ihre Konfiguration durch Hinzufügen zur Datei http.conf vornehmen, um sich selbst zu konfigurieren.

0
2018-03-31 17:14



Ich bin mir ziemlich sicher, dass ubuntu nicht verwendet wird httpd.conf weil es leer ist! - Olivier Pons
Es ist in der Datei apache2.conf enthalten, die die Teile von httpd.conf enthält, die nicht woanders sind. Es ist direkt nach der Konfiguration der Module enthalten. - BillThor
so benutzt es apache2.conf nicht httpd.conf. Natürlich können Sie Ihren Code immer noch eingeben httpd.conf aber vhost und andere Sachen sind bereits konfiguriert apache2.conf Sie sind also in gewisser Weise gezwungen zu benutzen apache2.conf statt der klassischen httpd.conf. Ich sage das nicht SchlechtIch frage nur: Warum Dinge ändern, die überall funktionieren, für einen anderen, der anders ist (und außerdem sind diese Veränderungen völlig nutzlos)? - Olivier Pons
@Oliver: Ich habe einige Details hinzugefügt. Nein, Sie sind nicht gezwungen, apache2.conf anstelle von httpd.conf zu verwenden. Sie können beide verwenden. Die Änderung ist nicht nutzlos und folgt dem Grundsatz der Trennung von Belangen. - BillThor