Apache HTTP

Kaip konfigūruoti „Apache VirtualHost“ „Ubuntu 18“.04 LTS

Kaip konfigūruoti „Apache VirtualHost“ „Ubuntu 18“.04 LTS
„Apache VirtualHost“ naudojama paleisti kelias svetaines tame pačiame „Apache“ serveryje. Tai nuostabi „Apache 2“ tinklo serverio funkcija, skirta didelio tankio svetainių diegimui viename serveryje. „Apache“ turi dviejų tipų „VirtualHost“ konfigūraciją: IP pagrįstą „VirtualHost“ ir pavadinimu pagrįstą „VirtualHost“.IP pagrįstas „VirtualHost“: IP pagrįstame „VirtualHost“ „Apache“ serveris turi kelis IP adresus ir jis atsako su skirtingomis svetainėmis pagal IP adresą.

1 pav. „Apache“ IP pagrįstas „VirtualHost“.

Pavadinimu pagrįstas „VirtualHost“: Vardais pagrįstame „VirtualHost“ „Apache“ serveryje yra vienas IP adresas ir keli domenų vardai, sukonfigūruoti kiekvienai svetainei. DNS serveryje kiekvienam iš šių domenų vardų priskiriamas „Apache“ serverio IP adresas. Priklausomai nuo to, kokį domeno vardą klientas naudojo, serveris grąžina skirtingas svetaines.

2 pav. „Apache“ vardas pagrįstas „VirtualHost“.

Šiame straipsnyje aš jums parodysiu, kaip sukonfigūruoti „Apache“ vardą, pagrįstą „VirtualHost“. Aš naudosiu „Ubuntu 18“.04 LTS demonstracijai. Bet tai turėtų veikti bet kuriame šiuolaikiniame „Linux“ platinime, be jokių pakeitimų. Taigi, pradėkime.

„Apache 2“ tinklo serverio diegimas:

„Apache 2“ žiniatinklio serveris pasiekiamas oficialioje „Ubuntu 18“ paketų saugykloje.04 LTS. Taigi, jūs galite lengvai jį įdiegti naudodami APT paketų tvarkyklę.

Pirmiausia atnaujinkite APT paketų saugyklos talpyklą naudodami šią komandą:

$ sudo apt atnaujinimas

Dabar paleiskite šią komandą, kad įdiegtumėte „Apache 2“ žiniatinklio serverį:

$ sudo apt install apache2

Dabar paspauskite y tada paspauskite tęsti.

Turėtų būti įdiegtas „Apache 2“ žiniatinklio serveris.

DNS konfigūravimas:

Dabar turite sukonfigūruoti DNS serverį, kad domenų vardai, kuriuos norite naudoti „VirtualHost“, būtų susieti su „Apache“ serverio IP adresu.

„Apache“ serverio IP adresą galite rasti naudodami šią komandą:

$ ip a | egrep "inet"

Kaip matote, mano atveju IP adresas yra 192.168.21.166. Jums bus kitaip. Taigi, nuo šiol būtinai pakeiskite jį savo.

Jei norite sužinoti, kaip konfigūruoti „Apache VirtualHost“ vietoje, galite naudoti / etc / hosts failas vietiniam DNS / vardo sprendimui.

Norėdami sukonfigūruoti vietinę DNS skiriamąją gebą, atidarykite / etc / hosts failą su nano taip:

$ sudo nano / etc / hosts

Dabar pridėkite eilutę, kaip pažymėta žemiau esančiame ekrano kopijoje, prie failo. Tada paspauskite + x paskui y ir kad išsaugotumėte failą.

Dabar vietinių pavadinimų sprendimas turėtų veikti.

Katalogų struktūros:

Noriu visus „Apache VirtualHost“ svetainės duomenis laikyti konkrečiame kataloge / www. Čia noriu sukurti katalogą kiekvienam vartotojui. Kiekvienas vartotojas turės savo public_html / ir žurnalai / kataloge.

Pavyzdžiui, 3 vartotojams bobas (pavyzdys1.com), alisa (pavyzdys2.com), linda (3 pavyzdys.com), katalogų struktūra yra tokia:

/ www
- 1 pavyzdys.com /
- www /
- public_html /
- indeksas.HTML
- žurnalai /
- 2 pavyzdys.com /
- www /
- public_html /
- indeksas.HTML
- žurnalai /
- 3 pavyzdys.com /
- www /
- public_html /
- indeksas.HTML
- žurnalai /

Paprastas būdas tai padaryti yra sukurti šabloną ar griaučių katalogą ir įdėti katalogo struktūrą.  Tada sukurkite kiekvieną vartotoją naudodami šį karkaso katalogą.

Pirmiausia nukopijuokite numatytojo skeleto katalogo turinį / etc / skel į kitą katalogą / etc / skel-www taip:

$ sudo cp -rv / etc / skel / etc / skel-www

Dabar eikite į naują skeleto katalogą taip:

$ cd / etc / skel-www

Tada sukurkite norimą katalogo struktūrą skeleto kataloge taip:

$ sudo mkdir -p www / public_html, logs

Taip pat galite sukurti numatytąjį indeksas.HTML failą public_html / katalogą, jei norite.

$ echo "

Tai veikia

"| sudo tee www / public_html / index.HTML

Dabar sukurkite / www katalogą su šia komanda:

$ sudo mkdir / www

Vartotojų kūrimas:

Dabar galite sukurti vartotoją Bobas skirtas www.1 pavyzdys.com taip:

$ sudo useradd --create-home --home-dir / www / example1.com - apvalkalas
/ bin / bash --gid www-data --skel / etc / skel-www bob

Tuo pačiu būdu sukurkite vartotoją alisa skirtas www.2 pavyzdys.com taip:

$ sudo useradd --create-home --home-dir / www / example2.com - shell / bin / bash
--gid www-duomenys --skel / etc / skel-www alice

Vėlgi sukurkite naudotojo linda, skirtą www.3 pavyzdys.com taip:

$ sudo useradd --create-home --home-dir / www / example3.com - shell / bin / bash
--gid www-duomenys --skel / etc / skel-www linda

Čia aš paskyriau kiekvieno vartotojo pagrindinę grupę www duomenys. Pagal numatytuosius nustatymus „Apache“ serveris veikia kaip ši grupė. Jei to nebūčiau daręs, „Apache“ serveris negalės pasiekti failų, esančių public_html / kataloge ir sukurkite žurnalo failus žurnalai / kataloge.

„Apache VirtualHost“ konfigūravimas:

Dabar esate pasirengę konfigūruoti „Apache VirtualHost“ 3 vartotojams Bobas (www.1 pavyzdys.com), alisa (www.2 pavyzdys.com) ir linda (www.3 pavyzdys.com).

Numatytasis „Apache“ svetainės konfigūracijos katalogas Ubuntu yra / etc / apache2 / sites-available.

Dabar eikite į katalogą / etc / apache2 / sites-available / taip.

$ cd / etc / apache2 / sites-available /

Pirmiausia sukurkite naują „Bob“ konfigūracijos failą www.1 pavyzdys.com.konf taip:

$ sudo nano www.1 pavyzdys.com.konf

Reikėtų atidaryti teksto redaktorių.

Dabar įveskite šias eilutes.

ServerName pavyzdys1.com
ServerAlias ​​www.1 pavyzdys.com
„DocumentRoot“ / www / example1.com / www / public_html "

Parinktys -FollowSymLinks + MultiViews + Indexes
AllowOverr all all
Reikalauti visų suteiktų
„ErrorLog“ / www / example1.com / www / logs / error.žurnalas "
„CustomLog“ / www / example1.com / www / logs / access.žurnalas "kartu

PASTABA: pakeiskite paryškintus tekstus pagal savo reikalavimus.

Galiausiai, konfigūracijos failas www.pavyzdys.com.konf turėtų atrodyti taip. Paspauskite + x po kurio eina y ir norėdami išsaugoti konfigūracijos failą.

tiesiog nukopijuoti konfigūracijos failą Bobas (www.1 pavyzdys.com.konf) ir padaryti tai, ko reikia mažai.

Nukopijuokite konfigūracijos failą Bobas dėl alisa ir linda naudodami šias komandas:

$ sudo cp -v www.1 pavyzdys.com.conf www.2 pavyzdys.com.konf
$ sudo cp -v www.1 pavyzdys.com.conf www.3 pavyzdys.com.konf

Dabar redaguokite alisa taip:

$ sudo nano www.2 pavyzdys.com.konf

Dabar pakeiskite visus 1 pavyzdys į 2 pavyzdys. Tada išsaugokite failą.

Daryk tą patį linda.

$ sudo nano www.3 pavyzdys.com.konf

Keisti visus 1 pavyzdys į 3 pavyzdys ir išsaugokite failą.

„VirtualHost“ konfigūracijų įgalinimas:

Dabar išjunkite numatytąją „Apache“ svetainės konfigūraciją taip:

$ sudo a2dissite 000-default.konf

Dabar įgalinkite „VirtualHost“ konfigūracijas www.1 pavyzdys.com.konf, www.2 pavyzdys.com.konf, www.3 pavyzdys.com.konf taip:

$ sudo a2ensite www.1 pavyzdys.com.conf www.2 pavyzdys.com.conf www.3 pavyzdys.com.konf

Galiausiai iš naujo paleiskite „Apache“ paslaugą taip:

$ sudo systemctl paleiskite „apache2“ iš naujo

„VirtualHosts“ testavimas:

Dabar pabandykite patekti į svetaines www.1 pavyzdys.com, www.2 pavyzdys.com, www.3 pavyzdys.com

Kaip matote, visos šios svetainės veikia taip, kaip tikėtasi.

PASTABA: Pakeičiau numatytąjį puslapį indeksas.HTML kiekvienai svetainei, kad kiekvienai svetainei būtų šiek tiek kitaip bandymų tikslais. Priešingu atveju negalėsite pasakyti, ar „VirtualHost“ konfigūracija veikia, ar ne.

Taigi, „Ubuntu 18“ sukonfigūravote pagal pavadinimą pagrįstą „Apache VirtualHost“.04 LTS. Dėkojame, kad perskaitėte šį straipsnį.

Kaip padidinti FPS sistemoje „Linux“?
FPS reiškia Kadrai per sekundę. FPS užduotis yra išmatuoti kadrų greitį atkuriant vaizdo įrašus ar žaidimus. Paprastais žodžiais, nepertraukiamų viso ...
Populiariausi „Oculus App Lab“ žaidimai
Jei esate „Oculus“ laisvų rankų įrangos savininkas, turite žinoti, kaip krauti iš šono. Šoninis įkėlimas yra ne parduotuvėje esančio turinio įdiegimas...
10 geriausių žaidimų, kuriuos reikia žaisti naudojant „Ubuntu“
„Windows“ platforma buvo viena iš dominuojančių žaidimų platformų dėl didžiulio procento žaidimų, kurie šiandien kuriami natūraliai palaikant „Windows...