Apache virtuaalne hostimine: IP-põhised ja nimepõhised virtuaalsed hostid RHEL/CentOS/Fedora


Kuna me kõik teame, et Apache on Nix OS-i jaoks väga võimas, väga paindlik ja seadistatav veebiserver. Siin selles õpetuses arutleme veel ühe Apache'i funktsiooni üle, mis võimaldab meil hostida rohkem kui ühte veebisaiti ühes Linuxi masinas. Virtuaalse majutuse juurutamine Apache veebiserveriga aitab teil säästa kulusid, mida investeerite oma serveri hooldusse ja nende haldamisse.

Jagatud veebimajutuse ja edasimüüja veebimajutuse mõiste põhineb ainult sellel Apache'i võimalusel.

Apache abil on saadaval kahte tüüpi virtuaalservereid.

Nimepõhise virtuaalse hostimise abil saate ühes masinas ühe IP-ga mitut domeeni/veebisaiti majutada. Kõik selle serveri domeenid jagavad ühte IP-d. Seda on lihtsam konfigureerida kui IP-põhine virtuaalne hostimine. Domeeni DNS tuleb konfigureerida ainult selle õige IP-aadressiga kaardistamiseks ja seejärel Apache konfigureerida domeeninimedega ära tundma.

IP-põhise virtuaalse hostimise abil saate määrata ühe serveri igale domeenile eraldi IP-i. Neid IP-sid saab serverisse kinnitada nii ühe kui ka mitme NIC-kaardi abil.

Võimaldab seadistada nimepõhise virtuaalse hostimise ja IP-põhise virtuaalse hostimise RHEL-is, CentOS-is ja Fedoras.

  1. OS - CentOS 6.5
  2. Rakendus - Apache veebiserver
  3. IP-aadress - 192.168.0.100
  4. IP-aadress - 192.168.0.101
  5. Domeen - www.example1.com
  6. Domeen - www.example2.com

IP-põhiste ja nimepõhiste Apache'i virtuaalsete hostide seadistamine

Enne Apache'iga virtuaalse hostimise seadistamist peab teie süsteem olema installitud Apache'i veebitarkvara. kui ei, installige see vaikepaketi installiprogrammi abil nimega yum.

 yum install httpd

Kuid enne virtuaalse hosti loomist peate looma kataloogi, kus hoiate kõiki oma veebisaidi faile. Niisiis, looge kataloogid nende kahe virtuaalse masina jaoks kausta/var/www/html. Pidage meeles, et/var/www/html on teie vaikedokumentide juur Apache virtuaalses konfiguratsioonis.

 mkdir /var/www/html/example1.com/
 mkdir /var/www/html/example2.com/

Nimepõhise virtuaalse hostimise seadistamiseks peate Apache'ile ütlema, millist IP-d kasutate kõigi veebisaitide või domeeninimede Apache-päringute saamiseks. Saame seda teha direktiiviga NameVirtualHost. Avage Apache'i põhikonfiguratsioonifail VI redaktoriga.

 vi /etc/httpd/conf/httpd.conf

Otsige NameVirtualHost ja tühjendage see rida, eemaldades selle ees oleva märgi #.

NameVirtualHost

Järgmisena lisage IP-kood võimalusega, milles soovite Apache-päringuid saada. Pärast muudatusi peaks teie fail välja nägema järgmine:

NameVirtualHost 192.168.0.100:80

Nüüd on aeg seadistada oma domeenide jaoks virtuaalsed hostisektsioonid, liikuge faili lõppu, vajutades tõstuklahvi + G. Siin näites seadistame kahe domeeni jaoks virtuaalse hosti jaotised

  1. www.näide1.com
  2. www.example2.com

Lisage faili lõppu järgmised kaks virtuaalset käskkirja. Salvestage ja sulgege fail.

<VirtualHost 192.168.0.100:80>
    ServerAdmin [email 
    DocumentRoot /var/www/html/example1.com
    ServerName www.example1.com
ErrorLog logs/www.example1.com-error_log
CustomLog logs/www.example1.com-access_log common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin [email 
    DocumentRoot /var/www/html/example2.com
    ServerName www.example2.com
ErrorLog logs/www.example2.com-error_log
CustomLog logs/www.example2.com-access_log common
</VirtualHost>

Võite vabalt lisada nii palju direktiive, mida soovite oma domeenide virtuaalhosti jaotisse lisada. Kui olete failis httpd.conf muudatustega valmis, kontrollige failide süntaksit järgmise käsuga.

 httpd -t

Syntax OK

Pärast mõningate muudatuste tegemist ja enne veebiserveri taaskäivitamist on soovitatav kontrollida faili süntaksit, sest kui mõni süntaks läheb valesti, keeldub Apache mõnede vigadega töötamast ja mõjutab teie olemasolevat veebiserverit mõnda aega. Kui süntaks on korras. Taaskäivitage oma veebiserver ja lisage see faili chkconfig, et teie veebiserver käivituks ainult käivitamise ajal 3. ja 5. tasemel.

 service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
 chkconfig --level 35 httpd on

Nüüd on aeg luua testleht nimega index.html, lisage failile sisu, et meil oleks midagi selle kontrollimiseks, kui IP helistab virtuaalsele hostile.

 vi /var/www/html/example1.com/index.html
<html>
  <head>
    <title>www.example1.com</title>
  </head>
  <body>
    <h1>Hello, Welcome to www.example1.com.</h1>
  </body>
</html>
 vi /var/www/html/example2.com/index.html
<html>
  <head>
    <title>www.example2.com</title>
  </head>
  <body>
    <h1>Hello, Welcome to www.example2.com.</h1>
  </body>
</html>

Kui olete sellega valmis, saate seadistust testida, pääsedes brauseris mõlemale domeenile juurde.

http://www.example1.com
http://www.example2.com

IP-põhise virtuaalse hostimise seadistamiseks peab teie serverile või Linuxi masinale olema määratud rohkem kui üks IP-aadress/port.

See võib olla ühel NIC-kaardil, näiteks: eth0: 1, eth0: 2, eth0: 3 ... jne. Samuti saab kinnitada mitu NIC-kaarti. Kui te ei tea, kuidas luua mitu IP-d ühel NIC-il, järgige allolevat juhendit, mis aitab teil loomisel välja tulla.

  1. Looge ühele võrguliidesele mitu IP-aadressi

IP-põhise virtuaalse hostimise juurutamise eesmärk on määrata rakendused igale domeenile ja seda konkreetset IP-d ei kasuta ükski teine domeen.

Selline seadistamine on vajalik, kui veebisait töötab SSL-sertifikaadiga (mod_ssl) või erinevates portides ja IP-des. Ühes masinas saate käivitada ka mitu Apache'i eksemplari. Serverisse lisatud IP-de kontrollimiseks kontrollige seda ifconfig käsuga.

[email  ~]# ifconfig
 
eth0      Link encap:Ethernet  HWaddr 08:00:27:4C:EB:CE  
          inet addr:192.168.0.100  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe4c:ebce/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:17550 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15120 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:16565983 (15.7 MiB)  TX bytes:2409604 (2.2 MiB)

eth0:1    Link encap:Ethernet  HWaddr 08:00:27:4C:EB:CE  
          inet addr:192.168.0.101  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:1775 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1775 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:3416104 (3.2 MiB)  TX bytes:3416104 (3.2 MiB)

Nagu ülaltoodud väljundist näha, on serveriga ühendatud kaks IP-d 192.168.0.100 (eth0) ja 192.168.0.101 (eth0: 1), mõlemad IP-d on määratud samale füüsilisele võrguseadmele (eth0).

Nüüd määrake konkreetne IP/port http-päringute vastuvõtmiseks, saate seda lihtsalt teha, muutes faili httpd.conf kuulamisdirektiivi.

 vi /etc/httpd/conf/httpd.conf

Otsige sõna „Kuula”, leiate jaotise, kus on kirjutatud lühikirjeldus kuulamisdirektiivi kohta. Selles jaotises kommenteerige algset rida ja kirjutage selle rea alla oma käsk.

# Listen 80

Listen 192.168.0.100:80

Nüüd looge mõlema domeeni jaoks virtuaalse hosti jaotised. Minge faili lõppu ja lisage järgmised virtuaalsed direktiivid.

<VirtualHost 192.168.0.100:80>
    ServerAdmin [email 
    DocumentRoot /var/www/html/example1
    ServerName www.example1.com
ErrorLog logs/www.example1.com-error_log
TransferLog logs/www.example1.com-access_log
</VirtualHost>

<VirtualHost 192.168.0.101:80>
    ServerAdmin [email 
    DocumentRoot /var/www/html/example2
    ServerName www.example2.com
ErrorLog logs/www.example2.com-error_log
TransferLog logs/www.example2.com-access_log
</VirtualHost>

Kuna olete muutnud peamist Apache conf-faili, peate taaskäivitama http-teenuse nagu allpool.

 service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

Testige oma IP-põhise virtuaalse hostimise seadistust, kasutades veebibrauseris URL-e, nagu allpool näidatud.

http://www.example1.com
http://www.example2.com

See on kõik Apache virtuaalse hostiga täna. Kui soovite oma Apache'i konfiguratsiooni turvata ja kõvendada, lugege meie juhendit.

  1. 13 Apache veebiserveri turvalisuse ja karastamise nõuannet

Viited

Apache virtuaalse hosti dokumentatsioon

Tulen oma tulevastes artiklites jälle mõne muu Apache'i näpunäite ja trikiga, siiani püsige Geeky ja ühendatud linux-console.net-iga. Ärge unustage jätta oma soovitused artikli kohta meie allpool olevasse kommentaaride jaotisesse.