Plasarea serverelor în centre de date fiabile din Europa. Deschideți serverul VPS / VDS bazat pe cloud pe SSD-uri rapide în 1 minut!
Cel mai bun Gazduire:
- protejează datele de accesul nedorit într-un centru de date european protejat
- va accepta plata cel puțin în taxe.
- vă va permite să vă distribuiți distribuția
- protecția împotriva atacurilor DDos
- copie de rezervă gratuită
- Uptime 99.9999%
- Centrul de date - TIER III
- furnizor - TIER I
Sprijinim în limba rusă 24/7/365 Lucrăm cu persoane juridice și persoane fizice. Acum aveți nevoie de 24 nuclee și 72 GB de memorie RAM. Vă rog!
Tarifele noastre avantajoase vor dovedi că nu ați știut încă ieftinul de găzduire!
Minute: selectați configurația, plătiți și CMS de pe VPS este gata.
Banii înapoi - 30 de zile!
Carduri bancare, e-valută, prin intermediul terminalelor Qiwi, Webmoney, PayPal, Novoplat etc.
Puneți o întrebare la sprijinul 24/7/365
Găsiți răspunsuri în baza noastră de date și cunoașteți recomandările
Ofertă de la 8host.com
Flexibil și productiv Apache este de departe cel mai popular server web, servește mai mult de jumătate din site-urile active.
Funcțiile Apache sunt distribuite între componentele sale individuale, care pot fi configurate individual. Componenta principală care conține setări pentru un anumit site este gazda virtuală. Gazdele virtuale (gazda virtuală engleză) vă permit să găzduiți mai multe domenii sau interfețe pe un singur server dedicat virtual.
Fiecare domeniu va direcționa utilizatorul către un director separat care conține informații despre site, în timp ce nu îi spune utilizatorului că acest server servește mai multe site-uri. Numărul de gazde virtuale de pe un server este limitat doar de resursele serverului propriu-zis.
Acest ghid vă arată modul de configurare a gazdelor virtuale pe un server dedicat CentOS 7, care vă va permite să difuzați conținut diferit în funcție de domeniul solicitat.
cerinţe
De asemenea, trebuie să instalați în prealabil Apache. Pentru a face acest lucru, utilizați managerul de pachete yum, care va instala serverul din depozitele standard CentOS.
sudo yum -y instala httpd
Apoi porniți Apache ca un serviciu pentru a porni automat după repornire.
sudo systemctl permite httpd.service
După aceea, conectați-vă la server prin SSH ca utilizator non-root cu privilegii sudo.
Notă. Tutorialul foloseste domeniile conditionale example.com si example2.com; nu uitați să le înlocuiți cu numele dvs. de domeniu.
Dacă nu aveți un nume de domeniu, la sfârșitul manualului veți vedea cum să testați configurația cu valori fictive.
1: Crearea unei structuri de directoare
În primul rând, trebuie să creați o structură de directoare în care să fie stocate datele site-ului.
Directorul rădăcină al documentului (directorul în care Apache caută conținutul) este în mod implicit localizat în / var / www; în el trebuie să creați un director separat pentru fiecare gazdă virtuală. În fiecare astfel de director va fi plasat directorul public_html, în care vor fi localizate fișierele. Această abordare face ca găzduirea să fie mai flexibilă.
Directoarele necesare pot fi create cu comanda mkdir (pavilonul -p vă permite să creați un director cu un subdirector atașat la acesta):
sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/example2.com/public_html
Notă. Nu uitați să înlocuiți domeniile condiționate cu datele dvs.
Deci, structura directorului este gata, dar toate fac parte din utilizatorul root. Pentru ca un utilizator non-root să efectueze modificări în fișierele directorului web, trebuie să modificați drepturile la aceste fișiere cu ajutorul chown:
sudo chown -R $ USER: $ USER /var/www/example.com/public_html
sudo chown -R $ USER: $ USER /var/www/example2.com/public_html
Variabila $ USER ia numele utilizatorului curent. După aceea, directoarele public_html care conțin conținutul site-urilor vor aparține utilizatorului actual.
De asemenea, trebuie să schimbați ușor privilegiile pentru a deschide directorul web și tot conținutul acestuia pentru citire, altfel paginile nu vor fi afișate corect.
sudo chmod -R 755 / var / www
Acum toate drepturile sunt stabilite corect; puteți începe să creați conținut în directoare special desemnate.
3: Crearea de demo-uri pentru gazde virtuale
Creați conținut de testare; Deoarece aceasta este o configurație de încercare a gazdelor, paginile vor fi foarte simple. Doar creați o pagină index.html pentru fiecare site.
În acest fișier, creați un document HTML simplu care indică la ce site este conectată pagina. În acest caz, acest fișier arată astfel:
Salvați și închideți fișierul.
Apoi puteți copia acest fișier și îl puteți folosi ca șablon pentru al doilea domeniu:
cp /var/www/example.com/public_html/index.html /var/www/example2.com/public_html/index.html
Deschideți fișierul copiat și editați datele corespunzătoare:
nano /var/www/example2.com/public_html/index.html
Salvați și închideți fișierul. Acum, paginile de testare sunt gata.
4: Crearea fișierelor gazdă virtuale
Fișierele gazdă virtuale specifică setările pentru site-urile individuale și ajută Apache să răspundă corect la solicitări.
În primul rând, trebuie să creați directoare separate pentru stocarea gazdelor virtuale și activarea site-urilor. Adresele disponibile pentru site-uri trebuie să conțină fișiere gazdă virtuale, iar directorul cu site-uri este un link simbolic la gazdele virtuale pe care doriți să le includeți. Pentru a crea aceste directoare, tastați:
sudo mkdir / etc / httpd / sites-disponibile
sudo mkdir / etc / httpd / site-enabled
Notă. Schema de configurare a directorului este o comandă Debian, dar este folosită și pe alte sisteme, deoarece este o modalitate foarte flexibilă și ușoară de a activa și dezactiva gazdele virtuale.
Serverul web Apache ar trebui să caute gazde virtuale în directorul cu site-uri activate. Pentru a face acest lucru, trebuie să editați fișierul principal de configurare Apache și să declarați un director suplimentar de fișiere de configurare.
sudo nano /etc/httpd/conf/httpd.conf
La sfârșitul directorului, adăugați linia:
Salvați și închideți fișierul.
sudo nano /etc/httpd/sites-available/example.com.conf
Notă. Conform configurațiilor specificate, toate fișierele de configurare trebuie să se termine în .conf.
Mai întâi, creați o pereche de etichete care declară acest conținut ca o gazdă virtuală care ascultă pe portul 80 (portul HTTP standard).
Apoi specificați numele serverului (în acest caz este www.example.com). Directiva ServerAlias vă permite să specificați nume de server suplimentare; Utilizați-l pentru a determina ca cererile www.example.com și example.com să returneze același conținut.
Numele serverului www.example.com
ServerAlias example.com
În cele din urmă, trebuie să setați directorul rădăcină pentru documente publice Web, precum și locația jurnalelor de eroare și de interogare pentru site-ul respectiv:
Numele serverului www.example.com
ServerAlias example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog /var/www/example.com/error.log
CustomLog /var/www/example.com/requests.log combinate
Salvați fișierul și închideți-l.
Copiați noul fișier creat și îl utilizați ca șablon pentru gazda virtuală a celui de-al doilea site, editând datele relevante.
sudo cp /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-available/example2.com.conf
sudo nano /etc/httpd/sites-available/example2.com.conf
Acum rămâne să editați datele astfel încât fișierul să poată servi al doilea domeniu. Ca rezultat, al doilea fișier gazdă virtuală arată astfel:
ServerName www.example2.com
DocumentRoot /var/www/example2.com/public_html
ServerAlias example2.com
ErrorLog /var/www/example2.com/error.log
CustomLog /var/www/example2.com/requests.log combinate
Salvați și închideți fișierul.
5: Activarea gazdelor virtuale
După crearea fișierelor gazdă virtuale, trebuie să le activați. Pentru a face acest lucru, creați o legătură simbolică pentru fiecare gazdă în directorul cu site-uri activate:
sudo ln -s /etc/httpd/sites-available/example.com.conf /etc/httpd/sites-enabled/example.com.conf
sudo ln -s /etc/httpd/sites-available/example2.com.conf /etc/httpd/sites-enabled/example2.com.conf
După aceasta, reporniți Apache pentru ca aceste modificări să aibă efect.
sudo apachectl reporniți
6: Configurarea gazdelor locale (opțional)
Dacă nu aveți un nume de domeniu și în locul celei reale pe care ați folosit un domeniu condiționat, puteți testa setările prin editarea temporară a fișierului hosts de pe computerul local. acesta va intercepta cererile pentru domeniile configurate anterior și le va trimite la VPS (adică va face munca DNS). Dar această metodă funcționează numai pe mașina locală și este potrivită doar pentru testare.
Notă. Asigurați-vă că treceți la mașina locală. Pentru a efectua această secțiune, aveți nevoie de acreditări de administrator.
Pe sistemele Mac sau Linux, editați fișierul hosts cu privilegii de administrator.
sudo nano / etc / gazde
Notă. Utilizatorii Windows pot găsi instrucțiunile necesare pentru acest link.
127.0.0.1 localhost
127.0.1.1 host-desktop
server_ip_address example.com
server_ip_address example2.com
7: Testarea gazde virtuale
Pentru a testa configurația, deschideți pur și simplu domeniile dintr-un browser web:
În acest caz, va fi afișat următorul mesaj:
Succes! Gazda virtuală example.com funcționează!
Notă. Desigur, ceea ce apare pe ecran depinde de conținutul fișierului creat în secțiunea 3.
Verificați funcționarea tuturor gazdelor virtuale.
Dacă fișierul hosts de pe computerul local a fost modificat, ștergeți rândurile inserate în acesta după testare, pentru a evita blocarea fișierului cu intrări inutile.
concluzie
Acum, serverul CentOS 7 poate suporta mai multe site-uri pe domenii separate. În general, numărul de gazde care pot fi găzduite pe un singur server depinde numai de resursele serverului; dacă este necesar, repetați pur și simplu procesul de mai sus pentru a adăuga o nouă gazdă virtuală serverului.
Alo
Fac totul conform instrucțiunilor, dar în ultimul pas, când repornesc, primesc:
"
apachectl: eroare de sintaxă de configurare, nu va executa "reporni":
Eroare de sintaxă pe linia 258 din /etc/httpd/conf/httpd.conf:
Comanda nevalidă "IncludeOpțional", probabil greșit orată sau definită de un server
"