„Apache“ virtualūs kompiuteriai, kaip mes galime juos sukonfigūruoti „Ubuntu 20.04“

apie virtualų kompiuterį „Apache“

Kitame straipsnyje apžvelgsime virtualius „Apache“ kompiuterius. Visų pirma būtina tai paaiškinti virtualus pagrindinis kompiuteris yra „Apache“ konfigūravimo direktyva, kuri leis mums paleisti daugiau nei vieną svetainę viename serveryje. Tai, kad jie veikia tame pačiame fiziniame serveryje, galutiniam vartotojui nėra akivaizdu.

Naudodami „Virtual Hosts“ galėsime nurodyti svetainės šaknį (katalogą, kuriame yra svetainės failai), sukurti atskirą kiekvienos svetainės saugumo politiką, naudoti skirtingus SSL sertifikatus ir daug daugiau.

Kitose eilutėse mes pamatysime kaip konfigūruoti „Apache“ virtualiuosius kompiuterius „Ubuntu 20.04“ir tam prieš tęsdami turime atitikti šiuos reikalavimus; vienas ar keli domenų vardai, nukreipiantys į jūsų viešojo serverio IP ir „Ubuntu“ įdiegtą „Apache“.

Sukurkite katalogo struktūrą

Dokumento šaknis yra katalogas, kuriame domeno vardo svetainės failai yra saugomi ir teikiami atsakant į užklausas. Šaknį galime nustatyti mus dominančioje vietoje. Kiekvienas domenas priglobtas apache serveris dokumento šaknis bus nustatytas kaip / var / www / domain-name / public_html.

Mes ketiname pirmiausia sukurkite šaknų katalogą dviem domenams kurį ketinu naudoti šiame pavyzdyje:

sukurti katalogo struktūrą

sudo mkdir -p /var/www/dominio1.com/public_html
sudo mkdir -p /var/www/dominio2.com/public_html

taip pat sukursime failą index.html kiekvieno domeno šakniniame kataloge. Tai bus rodoma, kai aplankysime domeną iš naršyklės:

sudo vim /var/www/dominio1.com/public_html/index.html

Failo viduje įklijuosime šį turinį:

namų kodo domenas

 
<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="utf-8">dominio1</title>
  </head>
  <body>    
<h1>Home del dominio1</h1>
  </body>
</html>

Antrojo domeno atveju redaguosime failą index.html ir pridėsime jį šį turinį:

sudo vim /var/www/dominio2.com/public_html/index.html

namų kodo domenas2

<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="utf-8">dominio2</title>
  </head>
  <body>
<h1>Home del dominio2</h1>
  </body>
</html>

Kadangi pirmiau nurodytos komandos vykdomos su sudo, naujai sukurti failai ir katalogai priklauso root. Norėdami išvengti problemų dėl leidimo, pakeisime domenų šakninio katalogo ir visų šiuose kataloguose esančių failų nuosavybės teises į „Apache“ vartotoją (www-data):

sudo chown -R www-data: /var/www/dominio1.com
sudo chown -R www-data: /var/www/dominio2.com

Sukurkite virtualius kompiuterius

„Ubuntu“ sistemose Virtualūs „Apache“ kompiuterių konfigūracijos failai yra kataloge / etc / apache2 / sites-available. Juos galima įjungti sukuriant simbolines nuorodas į katalogą / etc / apache2 / sites enabled, kurią „Apache“ skaito paleidimo metu.

Konfigūracijos failus galime įvardyti, ko tik norime. Bet geriausia praktika yra naudoti domeno vardą kaip virtualaus pagrindinio kompiuterio konfigūracijos failo pavadinimą. Dabar atidarysime savo mėgstamą teksto rengyklę ir sukursime pagrindinius konfigūracijos failus. Pavyzdyje aš tiesiog parodysiu domeno1 kodą:

sudo vim /etc/apache2/sites-available/dominio1.com.conf

Viduje mes pridėsime kažką panašaus į šį, bet domenui2 šiame kode turėsime pakeisti domeną1 į domeną2:

virtualus domenas1

<VirtualHost *:80>
    ServerName dominio1.com
    ServerAlias www.dominio1.com
    ServerAdmin webmaster@dominio1.com
    DocumentRoot /var/www/dominio1.com/public_html

    <Directory /var/www/dominio1.com/public_html>
        Options -Indexes +FollowSymLinks
        AllowOverride All
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/dominio1.com-error.log
    CustomLog ${APACHE_LOG_DIR}/dominio1.com-access.log combined
</VirtualHost>
  • Serverio pavadinimas → Ketinate nurodyti domeną, kuris turėtų atitikti šią virtualaus pagrindinio kompiuterio konfigūraciją. Rytai turėtų būti domeno vardas.
  • Serveris Alias → Viskas kiti domenai ar padomeniai, kurie turėtų atitikti šį virtualų pagrindinį kompiuterį, pavyzdžiui, www.
  • DocumentRoot → Čia yra nurodys katalogą, iš kurio „Apache“ aptarnaus failus.
  • Galimybės → Ši direktyva kontroliuoja, kokios serverio funkcijos yra prieinamos konkrečiame kataloge.
    • Indeksai → Venkite katalogų sąrašų.
    • „FollowSymLinks“ → Kai ši parinktis įgalinta, „Apache“ stebės simbolines nuorodas.
  • „AllowOverride“ → Ketinate nurodyti ką .htaccess faile deklaruojamos direktyvos gali nepaisyti konfigūravimo direktyvų.
  • „ErrorLog“, „CustomLog“ → Čia nurodysite žurnalo failo vietos.

Kai failai bus išsaugoti, ketiname įgalinti naują virtualaus pagrindinio failo failą sukurkite simbolinę nuorodą iš virtualaus pagrindinio failo į katalogą, kuriame įgalinta svetainė. Tai atliksime naudodami scenarijų a2ensitas:

a2ensito domenas1

sudo a2ensite dominio1.com

Kitas variantas yra rankiniu būdu sukurti simbolinę nuorodą kaip parodyta taip:

sudo ln -s /etc/apache2/sites-available/dominio1.com.conf /etc/apache2/sites-enabled/

Kai tai bus padaryta, mes galime patikrinkite, ar nėra sintaksės klaidų su:

sudo apachectl configtest

Jei nėra klaidų, terminale pamatysime tokį rezultatą:

sintaksė gerai

Mes tęsiame iš naujo paleisdami „Apache“ paslaugą kad pakeitimai įsigaliotų:

sudo systemctl restart apache2

Galiausiai, norėdami patikrinti, ar viskas veikia taip, kaip tikėtasi, atidarysime URL http://dominio1.com naršyklėje ir turėtume pamatyti domeno index.html puslapio turinį:

namų domino

Naudodamiesi „Virtual Host“, mes galime talpinti kelis domenus viename „Ubuntu“ serveryje. Mes galime pakartoti veiksmus, kurie buvo aprašyti ankstesnėse eilutėse, kad sukurtume papildomus virtualius kompiuterius visiems mūsų domenams.

virtualiųjų kompiuterių apache naršyklė

Šiame straipsnyje aprašytas dalykas yra tik pagrindinis paaiškinimas apie „Virtual Host“ ir jo konfigūraciją „Ubuntu“. Tai gali gauti daugiau informacijos adresu „Apache“ svetainė.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.

  1.   Carlos sakė

    Sveiki, man labai padėjo sukurti virtualius pagrindinius kompiuterius, bet paleisdamas apachectl confitest gavau tokią klaidą: „AH00558: apache2: Nepavyko patikimai nustatyti serverio visiškai kvalifikuoto domeno vardo, naudojant 127.0.1.1. Visiškai nustatykite direktyvą „ServerName“, kad šis pranešimas būtų užblokuotas
    Sintaksė gerai »

    Nežinau, kas gali būti negerai