Makro Apache ima ime, neke varijable i linije Apache konfiguracijskih kodova. Kada želite koristiti makronaredbu, zovete je imenom makronaredbe, prosljeđujete vrijednosti za svaku varijablu, varijable se zamjenjuju vrijednošću u makronaredbi, a zatim se makronaredba proširuje. To čini konfiguraciju super lakom i modularnom.
U ovom članku pokazat ću vam kako koristiti makro za upravljanje Apache 2 VirtualHost. Pa, krenimo.
Postavljanje VirtualHost:
U ovom ću članku implementirati konfiguraciju VirtualHost kao što je prikazano na slici 1 s makronaredbom. Imat ću 3 korisnika bob, alice i linda. bob bit će domaćin njegove web stranice www.primjer1.com na Apache poslužitelju s IP adresom 192.168.21.166. Isti način alice i linda bit će domaćin njihovih web stranica www.primjer2.com i www.primjer3.com odnosno na istom Apache poslužitelju.
Slika 1: VirtualHost temeljen na imenu u Apacheu 2
Ovaj je članak nastavak članka koji sam napisao o konfiguriranju Apache VirtualHost na Ubuntu 18.04 LTS koji možete pročitati na Kako konfigurirati Apache VirtualHost na Ubuntu 18.04 LTS (taj članak povežite ovdje).
Zahtjevi:
Ako ste novi u konfiguraciji Apache 2 i želite sve naučiti korak po korak, pročitajte moj članak Kako konfigurirati Apache VirtualHost na Ubuntu 18.04 LTS (taj članak povežite ovdje) prvi. Iz ovog članka morate slijediti odjeljke kako je navedeno u nastavku:
- Instaliranje web poslužitelja Apache 2
- Konfiguriranje DNS-a
- Strukture direktorija
- Stvaranje korisnika
Nakon što slijedite ove odjeljke iz referentnog članka, možete nastaviti sa sljedećim odjeljcima u ovom članku.
Omogućavanje modula Apache 2 mod_macro:
Prema zadanim postavkama, mod_macro modul nije omogućen na web poslužitelju Apache 2 na Ubuntu 18.04 LTS. No, modul je tu i lako ga možete omogućiti pomoću a2enmod naredba.
Kako bi se omogućilo mod_macro modul, pokrenite sljedeću naredbu:
$ sudo a2enmod makronaredbamod_macro treba omogućiti.
Izrada makronaredbe za VirtualHost:
Zadani direktorij u koji biste trebali staviti makro datoteke na Ubuntu 18.04 LTS je / etc / apache2 / conf-available /
.
Prvo se pomaknite do direktorija / etc / apache2 / conf-available /
kako slijedi:
Sada stvorite novu makro datoteku vhost-makro.konf
sa sljedećom naredbom:
Treba otvoriti uređivač teksta.
Sada unesite sljedeće retke:
$ ServerName poslužitelja
ServerAlias www.$ domena
DocumentRoot "/ www / $ domain / www / public_html"
Opcije -FollowSymLinks + MultiViews + Indexes
AllowOverride all
Zahtijevaj sve odobreno
ErrorLog "/ www / $ domain / www / logs / error.zapisnik "
CustomLog "/ www / $ domain / www / logs / access.trupac "kombiniran
Konačno, makronaredba izgleda kako slijedi. Sada spremite datoteku pritiskom na
Korištenje makronaredbe za svaki VirtualHost:
U ranijem članku stvorio sam konfiguracijske datoteke VirtualHost za bob (www.primjer1.com.conf), alice (www.primjer2.com.conf) i linda (www.primjer3.com.conf).
Sada je vrijeme da ga zamijenite makronaredbom.
Prvo dođite do zadanog direktorija web mjesta Apache 2 / etc / apache2 / web-mjesta dostupna
kako slijedi:
Dakle, otvorite konfiguracijsku datoteku VirtualHost za bob (www.primjer1.com.conf) kako slijedi:
$ sudo nano www.primjer1.com.konf
To je puno redaka. Pa, izbriši sve ove retke. Te nam više ne trebaju.
Samo stavite sljedeći redak i spremite datoteku pritiskom na
Sada, učinite istu stvar za alice (www.primjer2.com.conf).
$ sudo nano www.primjer2.com.konf
Uklonite sve retke, unesite sljedeći redak i spremite datoteku.
Upotrijebite VHost example2.com
Opet, učinite istu stvar za linda (www.primjer3.com.conf).
$ sudo nano www.primjer3.com.konf
Uklonite sve retke, unesite sljedeći redak i spremite datoteku.
Upotrijebite VHost example3.comOmogućavanje makronaredbe:
Sada morate omogućiti makronaredbu vhost-makro.konf koje ste upravo stvorili.
Da biste to učinili, pokrenite sljedeću naredbu:
$ sudo a2enconf vhost-makroMakro vhost-makro je omogućen.
Sada ponovo pokrenite uslugu Apache 2 na sljedeći način:
$ sudo systemctl ponovno pokrenite apache2
Testiranje virtualnih hostova zasnovanih na makronaredbama:
Sada pokušajte pristupiti web mjestima www.primjer1.com, www.primjer2.com, www.primjer3.com.
Kao što vidite, sve ove web stranice rade kako se očekivalo.
Jeste li vidjeli kako makronaredbe čine razliku? Ranije smo morali staviti puno redaka kodova u konfiguracijsku datoteku VirtualHost. Ali sada je dovoljan samo jedan redak koda za konfiguriranje VirtualHost-a. Omogućuje super jednostavno konfiguriranje VirtualHost-a.
Dakle, na taj način koristite Apache 2 makronaredbe za jednostavno konfiguriranje VirtualHost na Ubuntu 18.04 LTS. Hvala što ste pročitali ovaj članak.