• Digitaaliset tarvikkeet
  • Palvelin
  • Digitaalinen elämä
  • Tietosuojakäytäntö
  • Ota meihin yhteyttä
  1. Home
  2. Article
  3. Apache Virtual Host -kokoonpanon määrittäminen (esimerkein)

Apache Virtual Host -kokoonpanon määrittäminen (esimerkein)

Rsdaa 30/10/2021 1734

Käyttämällä Apache Virtual Hostia voit käyttää useita verkkosivustoja samalla palvelimella.

Voin esimerkiksi käyttää sekä thegeekstuff.com että top5freeware.com yhdellä fyysisellä palvelimella, jossa on käynnissä yksi Apache-verkkopalvelin.

Kuva: Apache Virtual Host (useita verkkosivustoja, yksi Apache)

On olemassa kahdenlaisia ​​Apache-virtuaaliisäntäkokoonpanoja: 1) IP-pohjainen virtuaalipalvelin ja 2) nimipohjainen virtuaalipalvelin. Nimipohjaista virtuaalipalvelinta suositellaan useimpiin tilanteisiin.

IP-pohjainen virtuaalipalvelin

Kun tässä kokoonpanossa osoitat kaksi verkkosivustoa (joilla on eri IP-osoite) Apachea käyttävään palvelimeen, kyseiselle fyysiselle palvelimelle tulee olla määritettynä kaksi eri IP-osoitetta. .

Tämä tarkoittaa, että palvelimella tulee olla kaksi ethernet-korttia, joista jokainen on määritetty sen vastaavan verkkosivuston IP-osoitteeseen, jota Apache-virtuaalipalvelin palvelee. Joten tämä ei ole käytännöllistä useimmissa asioissa, eikä sinun pitäisi käyttää tätä.

Seuraavassa esimerkissä palvelin sisältää kaksi NIC-korttia, joista toinen on määritetty 192.168.101.1 ip-osoitteella thegeekstuff.comille ja toinen 192.168.102.1 top5freeware.com:lle. Molempia IP-osoitteita palvelee yksi Apache-verkkopalvelin, joka toimii kyseisellä palvelimella käyttämällä IP-pohjaista virtuaalipalvelinta.

Kuva: Apache IP-pohjainen virtuaalipalvelin

Nimipohjainen virtuaalipalvelin

Tässä kokoonpanossa, kun Apache-verkkopalvelin vastaanottaa pyynnön, se etsii isäntänimeä HTTP-otsikosta ja isäntänimestä riippuen se palvelee eri verkkosivustoja. Tämä on erittäin helppoa, koska tarvitset vain yhden ip-osoitteen kyseisellä fyysisellä palvelimella; mutta päivität DNS:n useilla verkkosivustojen nimillä, jotka osoittavat samaan IP-osoitteeseen. Käytännön syistä käytät vain nimipohjaista virtuaaliisäntäkokoonpanoa.

Seuraavassa esimerkissä palvelin sisältää vain yhden NIC-kortin, jonka ip-osoite on 192.168.101.1. Sekä thegeekstuff.com- että top5freeware.com-sivuston DNS-merkintä osoittaa 192.168.101.1 ip-osoitteeseen. Kun Apache vastaanottaa pyynnön, se etsii isäntänimimerkinnän HTTP-otsikosta ja palvelee vastaavaa verkkosivustoa.

Kuva: Apache-nimipohjainen virtuaalipalvelin

1. Poista httpd-vhosts.conf-kommentit httpd.conf-tiedostossa

Jos olet asentanut Apache 2:n lähdekoodista, oletusarvoisesti seuraava rivi kommentoi httpd.conf-tiedostoa. Poista tämän rivin kommentti.

# vi /usr/local/apache2/conf/httpd.confSisällytä conf/extra/httpd-vhosts.conf

2. Asenna virtuaaliset isännät

Muokkaa httpd-vhosts.conf-tiedostoa alla kuvatulla tavalla määrittääksesi nimettyjen virtuaaliisäntäasetusten kahdelle isännälle.

NameVirtualHost *:80 – Ilmaisee, että kaikki nimipohjaiset virtuaalipalvelimet kuuntelevat oletusporttia. 80 – Liitä kaikki apache-määritysparametrit jokaiselle virtuaaliselle isännälle näiden VirtualHost-tunnisteiden väliin. Mitä tahansa apache-käskyä voidaan käyttää virtualhost-säilön sisällä.Seuraavassa esimerkissä asetamme virtuaalisen isännän osoitteelle thegeekstuff.com ja top5freeware.com, jotka kuuntelevat samaa porttia 80. Niitä on siis kaksi, yksi jokaiselle verkkosivustolle.Kun siirryt osoitteeseen thegeekstuff.com, Apache palvelee /usr/local/apache2/docs/thegeekstuff-tiedostoja; ja tämän sivuston access_log- ja error_log-tiedostot löytyvät hakemistosta /usr/local/apache2/logs/thegeekstuff# vi /usr/local/apache2/conf/extra/httpd-vhosts.confNameVirtualHost *:80ServerAdmin ramesh@thegeekstuffRoot.comDocurment /local/apache2/docs/thegeekstuff"ServerName thegeekstuff.comServerAlias ​​www.thegeekstuff.comErrorLog "logs/thegeekstuff/error_log"CustomLog "logs/thegeekstuff/access_log" commonServerAdminRolocal. docs/top5freeware "ServerName top5freeware.comServerAlias ​​www.top5freeware.comErrorLog "logs/top5freeware/error_log"CustomLog "logs/top5freeware/access_log" yleinen

3. Tarkista VirtualHost Configuration Syntax

Tarkista virtuaalikokoonpanon syntaksi käyttämällä "httpd -S" alla olevan kuvan mukaisesti. Kun kaikki on asetettu oikein, se näyttää vain "Syntaksi OK".

# /usr/local/apache2/bin/httpd -SVirtualHost configuration:Syntaksi OK

Jos jotain ei ole määritetty oikein, se näyttää varoitusviestin, mukaan lukien "hakemisto ei poistu" -viestin alla olevan kuvan mukaisesti.

# /usr/local/apache2/bin/httpd -Varoitus: DocumentRoot [/usr/local/apache2/docs/top5freeware] ei ole olemassa Varoitus: ErrorLog [/usr/local/apache2/logs/thegeekstuff] ei ole Syntaksi OK

4. Käynnistä Apache uudelleen ja testaa

# /usr/local/apache2/bin/apachectl restart

Kun nyt siirryt osoitteeseen thegeekstuff.com (tai www.thegeekstuff.com), apache palvelee tiedostoja osoitteesta / usr/local/apache2/docs/thegeekstuff-hakemisto.

Kun siirryt osoitteeseen top5freeware.com (tai www.top5freeware.com), sama apache, joka toimii samalla palvelimella, palvelee tiedostoja /usr/local/apache2/docs/top5freeware-hakemistosta.

Jotta nimipohjainen virtuaalinen isäntä toimisi kunnolla, molempien sivustojen DNS-merkinnän tulee osoittaa samaan ulkoiseen IP-osoitteeseen siinä fyysisessä palvelimessa, jossa Apache-verkkopalvelin toimii.


PREV: Parhaan DNS:n löytäminen PS4:lle vuonna 2021 | TechyThing

NEXT: Ei saada yhteyttä DHCP-palvelimeen | DHCP-vianmääritys

Popular Articles

Hot Articles
Back to Top