Ich habe ein Problem mit der Bedienung einer großen Anzahl von VirtualHosts und frage mich, ob es einen effizienteren Weg gibt, dies zu tun.
Ich verwende die Standortrichtlinie derzeit, um eine große Anzahl von Projekten aus verschiedenen Abteilungen zu bedienen, insgesamt über 300 Projekte aus 19 Abteilungen. Die Strukturen sind für jede Location-Direktive gleich, mit Ausnahme der Verzeichnisse, aus denen die Dateien bereitgestellt werden. Ich habe derzeit eine große Datei, die etwa so aussieht:
<VirtualHost *>
ServerName www.myserver.com
<Location /departmentA/project1>
AuthType Basic
AuthName "By Invitation Only"
AuthUserFile /usr/local/departmentA/project1/passwords
Require valid-user
</Location>
<Location /departmentA/project2>
AuthType Basic
AuthName "By Invitation Only"
AuthUserFile /usr/local/departmentA/project2/passwords
Require valid-user
</Location>
<Location /departmentB/project1>
AuthType Basic
AuthName "By Invitation Only"
AuthUserFile /usr/local/departmentA/project1/passwords
Require valid-user
</Location>
</VirtualHost>
Wie Sie sehen können, sind alle diese Strukturen gleich, mit Ausnahme der Pfade. Was ich gerne hätte, wäre natürlich etwas, bei dem ich Variablen für die Abteilungs- und Projektnamen verwenden und nur eine einzige Standortrichtlinie beibehalten könnte. Ich gehe davon aus, dass dies auch den Server und den Speicher weniger belastet.
<VirtualHost *>
ServerName www.myserver.com
<Location /$1/$2>
AuthType Basic
AuthName "By Invitation Only"
AuthUserFile /usr/local/$1/$2/passwords
Require valid-user
</Location>
</VirtualHost>