Ich habe zwei CentOS-Boxen, auf denen Apache läuft. Eine ist meine Entwicklungsumgebung und die andere meine Produktionsumgebung. Ich möchte Gulp verwenden, um Daten von meinem Entwicklungsserver über Git auf meinen Produktionsserver zu übertragen, habe aber je nach Umgebung unterschiedliche Konfigurationsanforderungen in meiner .htaccess-Datei.
Ich hätte gern eine Art zentrale Konfigurationsdatei, mit der ich diese Konfigurationen aktualisieren kann. Beim Pushen in die Entwicklung werden dann bestimmte Aspekte der .htaccess-Datei auf die Entwicklungseinstellungen gesetzt, und beim Pushen in die Produktion werden meine Produktionseinstellungen verwendet.
(Ich denke, die andere Möglichkeit besteht darin, eine dev.htaccess und eine prod.htaccess zu haben und Gulp die entsprechende Datei je nach der Umgebung, in die sie pusht, einfach in .htaccess umbenennen zu lassen. Ich möchte allerdings vermeiden, mehrere .htaccess-Dateien pflegen zu müssen.)
Antwort1
Meiner Meinung nach sollten Sie Ihre Serverkonfiguration getrennt von Ihrem Code verwalten.
Werkzeuge zur Konfigurationsverwaltungsollte es Ihnen problemlos ermöglichen, die richtige Konfiguration für eine bestimmte Umgebung beizubehalten, und Ihr Code sollte in jeder richtig konfigurierten Umgebung ausgeführt werden können.
Schließen Sie Ihre .htaccess
Datei daher nicht in Ihre Bereitstellung ein und verwenden Sie am besten .htaccess
überhaupt keine Dateien!
Zitat aus demHandbuch zu .htaccessDateien:
Du solltestVermeiden Sie die Verwendung
.htaccess
von Dateien vollständig wenn Sie Zugriff auf die httpd-Hauptserverkonfiguration habenDatei. Mit.htaccess
Dateien verlangsamen Ihren Apache-HTTP-Server. Jede Direktive, die Sie in eine Datei aufnehmen können,.htaccess
wird am besten in einerDirectory
Block in den Hauptkonfigurationsdateien von Apache, da dies den gleichen Effekt bei besserer Leistung hat.