Ich betrachte einen CentOS 6.5-Server mit einem installierten Webframework, der im Laufe der Jahre von vielen hinzugefügt wurde. Es gibt ungefähr 5 aktive .conf-Dateien in / conf, einschließlich httpd.conf.
In httpd.conf lautet das Include
Include conf.d/*.conf
und das erfasst alle Dateien in diesem Verzeichnis, aber ohne eine bestimmte Reihenfolge, die mir bekannt ist, und was ist mit dem Verzeichnis / conf (no .d)?
Gibt es eine Einstellung, die die Ladereihenfolge angibt, oder werden sie nur von az übernommen?
Ich bin nicht der Serveradministrator, ich bin ein Entwickler und das Problem liegt in den Pfaden zum Hochladen von Dateien in ein / Temp-Verzeichnis, in denen ich überprüft habe, ob der angegebene Pfad für die Dateien, mit denen ich mich befasse, korrekt ist.
Die erste Frage lautet also:
Lädt Apache alles aus / conf oder ist irgendwo eine Liste angegeben?
Die 2. Frage wäre:
In welcher Reihenfolge lädt Apache die Dateien alphabetisch?
Zuletzt:
Wird eine Datei aufgenommen, die nicht auf .conf endet ? Wenn ich zum Beispiel etwas benenne, das myconfig.conf.old ist, überspringt Apache es dann?
quelle
AllowOverride
, Konfigurationselemente mit config in einer.htaccess
Datei zu überschreiben .t
alles andere überschreiben?Apache lädt eine zusätzliche Konfiguration basierend auf der Direktive "Include". Es sieht wahrscheinlich so aus:
Es enthält also offensichtlich alles in "conf.d", was wie "* .conf" aussieht.
Um es noch verrückter zu machen, können Sie eine beliebige Anzahl von Verzeichnissen mit "include" hinzufügen, die alle ungefähr die gleichen Konfigurationsdateien enthalten können, die sich beim Start gerne gegenseitig überschreiben würden ... und dann selbst überschrieben werden durch die .htaccess-Datei in verschiedenen gehosteten Verzeichnissen.
Soweit ich das beurteilen kann, ist httpd.conf zuerst, gefolgt von den Verzeichnissen in der Reihenfolge, in der sie enthalten sind, und dann alphabetisch von dort.
Gute Zeiten. Sie können apachectl -t oder apachectl configtest verwenden, um eine Vorstellung davon zu bekommen, ob Ihre Konfiguration Probleme verursachen wird oder nicht.
quelle
Wenn Sie die Reihenfolge ändern möchten, öffnen Sie einfach die erste conf-Datei im Verzeichnis sites-available und fügen Sie vor dem ersten VirtualHost *: 80 Ihren virtuellen Hostcode hinzu.
In meinem Fall möchte ich, dass hub.xxx.com.conf vor bayxxx.com.conf steht. Also öffne ich hub.xxx.com.conf und platziere den virtuellen Host am Anfang einer Datei
Zum Beispiel:
quelle