The Numele serverului
Atributul din fișierele de configurare Apache nu trebuie repetat, deoarece fiecare linie ulterioară le va înlocui pe cele anterioare.
În schimb, puteți folosi Numele serverului
cu ServerAlias
ca aceasta:
ServerNume jekyll
ServerAlias jekyll.local *.jekyll *.jekyll.local
Rețineți că acest lucru este ilogic:
127.0.0.1 localhost/jekyll
127.0.0.1 localhost/alt-site
Acestea nu sunt domenii (sau subdomenii), ci căi sub gazdă locală
. Ca urmare, numai gazdă locală
vor fi observate. Acesta este motivul pentru care nu l-am inclus în configurația Apache, așa cum s-a menționat mai sus.
Deci, având în vedere acest lucru, puteți avea Trei Fișiere de configurare Apache:
⢠000-jekyll.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName jekyll
ServerAlias jekyll.local *.jekyll *.jekyll.local
DirectoryIndex index.html
DocumentRoot /var/www/jekyll/_site
LimitRequestFieldSize 48000
<Directory /var/www/jekyll/_site>
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/jekyll-error.log
CustomLog ${APACHE_LOG_DIR}/jekyll-access.log combined
</VirtualHost>
⢠001-altul.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName other-site
ServerAlias other-site.local *.other-site *.other-site.local
DirectoryIndex index.html
DocumentRoot /var/www/other-site/_site
LimitRequestFieldSize 48000
<Directory /var/www/other-site/_site>
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/other-error.log
CustomLog ${APACHE_LOG_DIR}/other-access.log combined
</VirtualHost>
⢠999-default.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName localhost
ServerAlias *.localhost * *.*
DirectoryIndex index.html
DocumentRoot /var/www
LimitRequestFieldSize 48000
<Directory /var/www>
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/local-error.log
CustomLog ${APACHE_LOG_DIR}/local-access.log combined
</VirtualHost>
Apache procesează traficul în funcție de ordinea fișierelor de configurare. Deci orice domeniu care se potrivește cu cele specificate în 000-jekyll.conf
va fi gestionat de acel dosar. Dacă nu se găsesc potriviri, atunci 001-altul.conf
vor fi verificate. Dacă nu se găsesc potriviri, atunci 999-default.conf
va fi folosit. Rețineți că ServerAlias
în 999-default.conf
fișier și modul în care se bazează pe metacaracterele larg deschise. Acest lucru înseamnă că va fi tratat ca un catch-all pentru traficul care nu se potrivește cu fișierele de configurare definite.
Notă: Fișierele de configurare Apache au fost simplificate pentru a elimina irelevante Director
blocuri și pentru ca fiecare gazdă să folosească propriile lor jurnalele de erori.