Makro Apache ima ime, nekatere spremenljivke in vrstice konfiguracijskih kod Apache. Ko želite uporabiti makro, ga pokličete z imenom makra, posredujete vrednosti za vsako spremenljivko, spremenljivke se nadomestijo z vrednostjo v makru in nato makro razširi. Konfiguracija je izjemno enostavna in modularna.
V tem članku vam bom pokazal, kako uporabljati makro za upravljanje Apache 2 VirtualHost. Torej, začnimo.
Nastavitev VirtualHost:
V tem članku bom izvedel konfiguracijo VirtualHost, kot je prikazano na sliki 1 z makrom. Imel bom 3 uporabnike bob, alice in linda. bob bo gostil njegovo spletno stran www.primer1.com na strežniku Apache z naslovom IP 192.168.21.166. Na enak način alice in linda bo gostila njihova spletna mesta www.primer2.com in www.primer3.com na istem strežniku Apache.
Slika 1: VirtualHost na osnovi imen v Apache 2
Ta članek je razširitev članka, ki sem ga napisal o konfiguriranju Apache VirtualHost v Ubuntu 18.04 LTS, ki si ga lahko preberete na Kako konfigurirati Apache VirtualHost v Ubuntu 18.04 LTS (ta članek povežite tukaj).
Zahteve:
Če še niste seznanjeni s konfiguracijo Apache 2 in se želite vsega naučiti korak za korakom, preberite moj članek Kako konfigurirati Apache VirtualHost v Ubuntu 18.04 LTS (ta članek povežite tukaj) najprej. V tem članku morate upoštevati spodnja poglavja:
- Namestitev spletnega strežnika Apache 2
- Konfiguriranje DNS
- Strukture imenikov
- Ustvarjanje uporabnikov
Ko sledite tem odsekom iz referenčnega članka, lahko nadaljujete z naslednjimi razdelki v tem članku.
Omogočanje modula Apache 2 mod_macro:
Privzeto, mod_macro modul ni omogočen na spletnem strežniku Apache 2 v Ubuntu 18.04 LTS. Toda modul je tam in ga lahko enostavno omogočite s pomočjo a2enmod ukaz.
Omogočiti mod_macro modul, zaženite naslednji ukaz:
makro $ sudo a2enmodmod_macro mora biti omogočena.
Ustvarjanje makra za VirtualHost:
Privzeti imenik, kamor bi morali makro datoteke naložiti v Ubuntu 18.04 LTS je / etc / apache2 / conf-available /
.
Najprej se pomaknite do imenika / etc / apache2 / conf-available /
kot sledi:
Zdaj ustvarite novo datoteko makra vhost-makro.conf
z naslednjim ukazom:
Odpreti je treba urejevalnik besedil.
Zdaj vnesite naslednje vrstice:
Domena ServerName $
ServerAlias www.$ domena
DocumentRoot "/ www / $ domain / www / public_html"
Možnosti -FollowSymLinks + MultiViews + Indexes
AllowOverride all
Zahtevaj vse odobreno
ErrorLog "/ www / $ domain / www / logs / error.dnevnik "
CustomLog "/ www / $ domain / www / logs / access.dnevnik "kombinirano
Na koncu makro izgleda takole. Zdaj shranite datoteko s pritiskom na
Uporaba makra za vsak VirtualHost:
V prejšnjem članku sem ustvaril konfiguracijske datoteke VirtualHost za bob (www.primer1.com.conf), alice (www.primer2.com.conf) in linda (www.primer3.com.conf).
Zdaj je čas, da ga nadomestimo z makro.
Najprej se pomaknite do privzetega imenika mest Apache 2 / etc / apache2 / sites-available
kot sledi:
Torej, odprite konfiguracijsko datoteko VirtualHost za bob (www.primer1.com.conf), kot sledi:
$ sudo nano www.primer1.com.conf
To je veliko vrstic. No, izbriši vse te vrstice. Teh ne potrebujemo več.
Vstavite naslednjo vrstico in datoteko shranite s pritiskom na
Zdaj naredite isto za alice (www.primer2.com.conf).
$ sudo nano www.primer2.com.conf
Odstranite vse vrstice, vnesite naslednjo vrstico in shranite datoteko.
Uporabite VHost example2.com
Še enkrat, naredite isto za linda (www.primer3.com.conf).
$ sudo nano www.primer3.com.conf
Odstranite vse vrstice, vnesite naslednjo vrstico in shranite datoteko.
Uporabite VHost example3.comOmogočanje makra:
Zdaj morate omogočiti makro vhost-makro.conf ki ste ga pravkar ustvarili.
Če želite to narediti, zaženite naslednji ukaz:
$ sudo a2enconf vhost-macroMakro vhost-makro je omogočena.
Zdaj znova zaženite storitev Apache 2, kot sledi:
$ sudo systemctl znova zaženite apache2
Testiranje virtualnih gostov na osnovi makrov:
Zdaj poskusite dostopati do spletnih strani www.primer1.com, www.primer2.com, www.primer3.com.
Kot lahko vidite, vsa ta spletna mesta delujejo po pričakovanjih.
Ste videli, kako makri naredijo razliko? Prej smo morali v konfiguracijsko datoteko VirtualHost vstaviti veliko vrstic kod. Zdaj pa je za konfiguracijo VirtualHost dovolj samo ena vrstica kode. Omogoča izjemno enostavno konfiguriranje VirtualHost.
Torej, tako uporabljate makre Apache 2 za preprosto konfiguracijo VirtualHost v Ubuntu 18.04 LTS. Hvala, ker ste prebrali ta članek.