Tīmekļa serveris

Virtuālā mitināšana jeb vairāku mājaslapu izvietošana uz viena servera

Pirms šīs sadaļas apgūšanas ieteicams iepazīties ar iepriekšējā nodaļā aprakstīto DNS servera uzstādīšanu un konfigurāciju. Virtuālās mitināšanas neatņemama sastāvdaļa ir domēna vārdu sistēma. Turpmākajās sadaļās tiek pieņemts, ka lasītājam ir iemaņas darbā ar DNS.

Iespēja izveidot mājaslapu, protams, ir laba, tomēr bieži vien uz viena un tā paša servera tiek glabātas simtiem vai pat tūkstošiem mājaslapas, jo parasti katrai no tām nepieciešams neliels resursu apjoms. Vienkāršākais no variantiem būtu direktorijā /var/www veidot apakšdirektorijas, kur katra no tām atbilstu citai mājaslapai, piemēram:

  • /var/www/lapa_1;

  • /var/www/lapa_2;

  • ...

  • /var/www/lapa_n.

Tā, protams, var rīkoties, tomēr šis nav ērtākais veids, turklāt visām lapām viennozīmīgi būs viens un tas pats domēns, piemēram:

  • http://piemeram.lv/lapa_1;

  • http://piemeram.lv/lapa_2;

  • ...

  • http://piemeram.lv/lapa_n.

Šādi nevarēs rīkoties, ja uz viena servera jāmitina pilnīgi nesaistīti projekti, kam vienam ar otru nav nekāda sakara. Apache tīmekļa serveris šai problēmai piedāvā risinājumu – virtuālā mitināšana (virtual hosting). Atkarībā no tā, kādu mājaslapas adresi pieprasot lietotājs būs nonācis līdz šim serverim, tiks attiecīgi parādīta tā vai cita mājas lapa. Piemēram, ja lietotājs savā pārlūkā būs ierakstījis http://viens.piemeram.lv, tad tiks padota mājas lapa no direktorijas viens, savukārt, ja lietotājs būs pieprasījis http://otrs.piemeram.lv un arī nonācis pie tā paša tīmekļa servera, tad tiks padota lapa no direktorijas otrs.

XFCE - failu pārvaldnieks

Attēls 41: XFCE - failu pārvaldnieks

Parasti virtuālajai mitināšanai tiek izveidota atsevišķa direktorija, kurā tiks glabātas mājaslapas, protams, var izmantot arī /var/www direktoriju, ja ir tāda vēlme. Es piedāvāju izveidot direktoriju sava lietotāja mājas mapē ar nosaukumu webroot (burtiskajā tulkojumā – tīmekļa sakne). To var paveikt atverot Mājas mapi uz darbvirsmas un izveidojot jaunu mapi. Manā gadījumā tā būs /home/user/webroot, jūsu gadījumā user vietā jāraksta jūsu lietotājvārds. Kad tas paveikts, webroot mapē jāizveido direktorijas pirmajām divām lapām un jāizvieto tajās index.html faili, turklāt vēlams lai tie atšķirtos. Piemēram, var izveidot direktorijas viens un otrs. Un katrā no tām izveidot index.html failu ar saturu <h1>viens.piemeram.lv</h1> un <h1>otrs.piemeram.lv</h1> attiecīgajās direktorijās. Tātad, šobrīd ir sekojošas direktorijas:
  • /home/user/webroot/viens;

  • /home/user/webroot/otrs.

Katrā no šīm direktorijām ir index.html fails ar dažādu saturu. Pieņemot, ka lasītājs ir iepazinies ar DNS servera pamatprincipiem, var ķerties klāt pie virtuālo mitināšanas vietu izveides.

Webmin saskarnē, Servers -> Apache Webserver -> Existing virtual hosts sadaļā pieejama informācija par šobrīd Apache tīmekļa serverī izveidotajām virtuālajām mitināšanas vietām. Pēc noklusējuma ir Default Server, kas atbild par pamat konfigurāciju un standarta miteklis /var/www. Jaunu mitekļu izveidošanai paredzēta sadaļa Create virtual host. Principā divi galvenie parametri, kuri nepieciešami, lai izveidotu virtuālo mitekli ir:

  • Document Root – vieta, kur glabājas faili;

  • Server Name – uz kādu vārdu atsaukties dotajam miteklim.

Papildu var definēt:

  • Handle connections to address – ja serverim pieejamas vairākas IP adreses (piemēram, iekšējā un ārējā) un dotajam miteklim jābūt pieejamam tikai izmantojot noteiktu tīkla interfeisu (piemēram, tikai iekšējo), tad te var definēt uz kādu adresi atbildēs dotais mitekliks;

  • Port – ports, uz kuru atbildēs miteklis, pēc noklusējuma uz visiem, kurus klausīsies Apache tīmekļa serveris (pēc noklusējuma Apache klausās uz 80. porta);

  • Copy directives from – ja iepriekš jau izveidots kāds virtuālais miteklis un šim papildu iestatījumi būs tādi paši, tad šeit var norādīt no kura mitekļa pārkopēt papildu iestatījumus.

Webmin - Apache virtuālās mitināšanas vietas izveidošana

Attēls 42: Webmin - Apache virtuālās mitināšanas vietas izveidošana

Veidojot pirmo virtuālo mitkeli, Document Root ir /home/user/webroot/viens, atcerieties user aizstāt ar savu lietotājvārdu. Kad visa nepieciešamā informācija ievadīta, miteklis gatavs izveidošanai (Create Now). Tādā pašā veidā var izveidot arī otru mitekli. Kad abi mitekļi izveidoti, Apache serverim jānorāda, lai tas no jauna ielasa konfigurācijas failu un visas veiktās izmaiņas stātos spēkā. Augšējā labajā stūrī jāizpilda Apply Changes. Lai pārbaudītu vai izveidotie virtuālie mitekļi darbojas kā paredzēts, tie jāapskata pārlūkprogrammā, pieprasot attiecīgi:

  • http://viens.piemeram.lv

Virtuālās mitināšanas vieta http://viens.piemeram.lv

Attēls 43: Virtuālās mitināšanas vieta http://viens.piemeram.lv

  • http://otrs.piemeram.lv

Virtuālās mitināšanas vieta http://otrs.piemeram.lv

Attēls 44: Virtuālās mitināšanas vieta http://otrs.piemeram.lv

Šādā veidā uz viena Apache tīmekļa servera var izveidot neskaitāmus virtuālos serverus. Parasti tā arī tiek darīts – uz viena servera tiek izvietotas desmitiem, simtiem vai pat tūkstošiem mājas lapu. Piemēram, katram skolniekam piedāvājot izveidot savu mājaslapu un izvietot to uz skolas servera. Viss, kas nepieciešams, lai izveidotu papildu virtuālo mitekli ir:

  • Izveidot jaunu domēnu vai apakšdomēnu un norādīt tā atrašanās vietu;
  • izveidot jaunu direktoriju virtuālajam miteklim;
  • izveidot virtuālo mitekli.

Parasti šīs trīs darbības neaizņems vairāk par 5 minūtēm.