Cum configurați gazde virtuale Apache pe Ubuntu 22.04

Configurare noua (How To)

Situatie

Apache Virtual Hosts vă permite să găzduiți mai multe site-uri web pe un singur server. Folosind Virtual Hosts, puteți personaliza fiecare site web prin crearea separată a documentului rădăcină, a politicii de securitate și a diferitelor certificate SSL. Unitatea de bază care descrie un site sau un domeniu individual. Este cunoscut ca gazdă virtuală. Acest tutorial explică cum să configurați Apache Virtual Hosts pe Ubuntu 22.04 Jammy Jellyfish.

Solutie

Pasi de urmat

La început, vom crea un director rădăcină a documentului în care datele site-ului web vor fi stocate și servite vizitatorilor pentru un domeniu. Puteți seta rădăcina documentului în orice locație doriți. Este cea mai bună practică să setați în structura directorului. De obicei, stocat la /var/www.

/var/www/
 ├── example1.com
 │   └── public_html
 ├── example2.com
 │   └── public_html

Să creăm directorul rădăcină al documentului pentru primul domeniu. Urmați rândurile de mai jos:

sudo mkdir -p /var/www/example1.com/public_html

Creați un fișier index.html în directorul rădăcină al documentului de domeniu pentru testare. În mod implicit, această pagină va fi afișată vizitatorului. Rulați comanda de mai jos pentru a crea un nou fișier index.html folosind editorul de text preferat:

sudo nano /var/www/example1.com/public_html/index.html

Acum adăugați rândurile de mai jos:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Welcome!!</title>
  </head>
  <body>
    <h1>Success! example1.com set up completed!</h1>
  </body>
</html>

Din moment ce, am creat directorul și fișierele cu utilizatorul sudo, astfel încât acestea să fie deținute de utilizatorul nostru root. Vom schimba proprietatea directoarelor rădăcină a documentelor pentru a evita problema permisiunii pentru utilizatorul nostru obișnuit.

sudo chown -R www-data: /var/www/example1.com

În mod implicit, pe mașina Ubuntu, fișierele de configurare Apache Virtual Host se află în directorul /etc/apache2/sites-available. Vom crea fișiere de configurare a gazdei virtuale în această locație. Creați un fișier nou utilizând editorul de text ales, tastând:

sudo nano /etc/apache2/sites-available/example1.com.conf
<VirtualHost *:80>
    ServerName example1.com
    ServerAlias www.example1.com
    DocumentRoot /var/www/example1.com/public_html

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

    ErrorLog ${APACHE_LOG_DIR}/example1.com-error.log
    CustomLog ${APACHE_LOG_DIR}/example1.com-access.log combined
</VirtualHost>
  • ServerName: Acesta ar trebui să fie numele dvs. de domeniu și să se potrivească cu configurația gazdei virtuale.
  • ServerAlias: Toate celelalte domenii sau subdomenii care ar trebui să se potrivească și pentru această gazdă virtuală, de obicei subdomeniul www.
  • DocumentRoot: Calea directorului gazdă virtuală din care Apache va servi fișierele de domeniu.
  • Opțiuni: Această directivă controlează ce caracteristici de server sunt disponibile într-un anumit director.

-Indexuri: va preveni listarea directoarelor.

  • FollowSymLinks: Apache va urma legăturile simbolice dacă această opțiune este activată.
  • AllowOverride: Specifică ce directive declarate în fișierul .htaccess pot suprascrie directivele de configurare.
  • ErrorLog, CustomLog: Specifică locația fișierelor jurnal.
    Puteți da orice nume fișierului dvs. de configurare. Se va recomanda ca numele din fișier să fie același cu numele domeniului.

Acum, vom activa fișierul gazdă virtuală prin crearea de link-uri simbolice către directorul /etc/apache2/sites-enabled.

În sistemele Ubuntu puteți crea legături simbolice fie prin instrumentul a2ensite, fie manual. Pentru a crea folosind a2ensite, executați următoarea comandă:

sudo a2ensite example1.com

Pentru a crea manual link simbolic, tastați:

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

Acum verificați sintaxa după tip:

sudo apachectl configtest

Trebuie să reporniți serviciul apache2 pentru a obține efectul modificărilor prin comanda de mai jos:

sudo systemctl restart apache2

Puteți verifica deschizând http://example1.com în browserul dvs. web și vă va afișa după cum urmează:

Tip solutie

Permanent

Voteaza

(39 din 48 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?