<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.0.5" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>emilis.info</title>
	<link>http://emilis.info</link>
	<description>Pastabos paraštėse</description>
	<pubDate>Tue, 29 Jul 2008 09:15:08 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.5</generator>
	<language>en</language>
			<item>
		<title>Apache virtual hosts konfigūravimas žaliems</title>
		<link>http://emilis.info/straipsniai/vhosts_zaliems/</link>
		<comments>http://emilis.info/straipsniai/vhosts_zaliems/#comments</comments>
		<pubDate>Sun, 08 Aug 2004 23:21:07 +0000</pubDate>
		<dc:creator>Emilis</dc:creator>
		
		<guid isPermaLink="false"></guid>
		<description><![CDATA[Taip jau atsitiko, kad Vilius, kuris rūpinasi mūsų serverio (gildija.lt)&#160;administravimu išvyko mėnesiui į šiltus kraštus ir paliko mane vieną grybauti po linuxinio serverio vandenis. Problemos iškilo tada, kai prireikė sukurti porą subdomeinų ant servo. Ačiū geriems draugams per porą dienų,&#160;jas pavyko išspręsti.
Ta proga, kad Žilvinas paprašė, kad jam papasakočiau, kaip man tai pavyko, surašiau savo [...]]]></description>
			<content:encoded><![CDATA[<p><P>Taip jau atsitiko, kad <A href="http://vilius.gildija.lt/">Vilius</A>, kuris rūpinasi mūsų serverio (gildija.lt)&nbsp;administravimu išvyko mėnesiui į šiltus kraštus ir paliko mane vieną grybauti po linuxinio serverio vandenis. Problemos iškilo tada, kai prireikė sukurti porą subdomeinų ant servo. Ačiū geriems draugams per porą dienų,&nbsp;jas pavyko išspręsti.</P><br />
<P>Ta proga, kad <A href="http://www.aketa.lt/~nitro/">Žilvinas</A> paprašė, kad jam papasakočiau, kaip man tai pavyko, surašiau savo pastabas į straipsnelį. </P><br />
<P>Nepretenduoju čia į kokią rimtą dokumentaciją.&nbsp;Tiesiog vieno žalio Linux&nbsp;vartotojo patarimai kitiems žaliems. Tam, kad susigaudytumėte šiame straipsnelyje jums reikia mokėti naudotis Linux konsole (shell&#8217;u), nardyti po direktorijas, redaguoti failus, mokėti prisijungti root vartotoju ir turėti įsivaizdavimą kur ir kas padėta jūsų serveryje. Dirbau ant jau suinstaliuotos ir sukonfigūruotos sistemos, taigi nerašau apie Apache ir DNS serverio instaliavimą po Linux.</P><br />
<H2>Apache konfigūravimas</H2><br />
<P><STRONG>1.</STRONG> Reikia susirasti ir paredaguoti Apache&#8217;s virtual hosts konfigūracijos failą. Jūsų sistemoje šio failo gali ir nebūti, o virtualių host&#8217;ų konfigūracija gail būti sutvarkyta tiesiai <FONT face=""><EM>httpd.conf</EM></FONT> faile.</P><br />
<P>Mūsų serveryje virtual hosts konfigūracija iškelta į atskirą failą. Tokiu būdu turime&nbsp;pagrindinį <A href="http://httpd.apache.org/docs-2.0/">Apache 2.0</A> web serverio konfigą:</P><br />
<P><FONT face="Courier New" color=#333366>/etc/httpd/conf/httpd2.conf</FONT></P><br />
<P>ir jame įrašytą direktyvą <A href="http://httpd.apache.org/docs-2.0/mod/core.html#include"><EM>Include</EM></A>:</P><br />
<P><FONT face="Courier New" color=#333366>Include conf/vhosts/Vhosts.conf</FONT></P><br />
<P><STRONG>2.</STRONG> Toliau redaguojame <EM>/etc/httpd/conf/vhosts/Vhosts.conf</EM> failą. Tam, kad veiktų virtual host&#8217;ai,&nbsp;šiame faile&nbsp;turi būti įrašyta direktyva <EM>NameVirtualHost</EM> (pakeiskite IP adresą savo serverio IP adresu):</P><br />
<P><FONT face="Courier New" color=#333366>NameVirtualHost 213.197.142.106</FONT></P><br />
<P>Pačio virtual host&#8217;o aprašymas tuomet atrodo maždaug taip:</P><br />
<P><FONT face="Courier New" color=#333366># bugs.gildija.lt (By Emilis 2004-08-07)<BR>&lt;VirtualHost 213.197.142.106&gt;<BR>&nbsp;&nbsp;&nbsp; DocumentRoot /web/bugs/www<BR>&nbsp;&nbsp;&nbsp; ServerName bugs.gildija.lt<BR>&nbsp;&nbsp;&nbsp; ServerAdmin </FONT><A href="mailto:webmaster@gildija.lt"><FONT face="Courier New" color=#333366>webmaster@gildija.lt</FONT></A><BR><FONT face="Courier New" color=#333366>&nbsp;&nbsp;&nbsp; ErrorLog /web/bugs/log/bugs.gildija.lt-error_log<BR>&nbsp;&nbsp;&nbsp; TransferLog /web/bugs/log/bugs.gildija.lt-access_log<BR>&nbsp;&nbsp;&nbsp; php_admin_flag safe_mode off&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #&nbsp;sitos direktyvos veikia<BR>&nbsp;&nbsp;&nbsp; php_admin_flag register_globals off # jei serveryje yra PHP<BR>&lt;/VirtualHost&gt;</FONT></P><br />
<P><STRONG><FONT color=#cc0000>(!)</FONT></STRONG> <EM>Neužmirškite IP adreso, direktorijų ir serverio pavadinimų pakeisti pagal savo turimą sistemą! Neužmirškite, kad failai DocumentRoot direktorijoje turės būti prieinami Apache serverio skaitymui, o ErrorLog ir TransferLog failai - rašymui.</EM></P><br />
<P><STRONG>3.</STRONG> Po to kai sukonfigūravome virtualų serverį, reikia perkrauti Apache web serverio procesą. Tam pravers komanda <EM>apachectl</EM>. Tam, kad naudoti šią komandą reikia būti prisijungus <EM>root</EM> vartotojo teisėmis (tikiuosi, kaip šitą atlikti žinote patys). Pirma iš konsolės patikriname ar teisingai viską sukonfigūravome:</P><br />
<P><FONT face="Courier New" color=#666699><FONT color=#333366>root{gildija.lt}# apachectl configtest<BR>Checking configuration sanity for Apache 2.0:&nbsp;&nbsp;&nbsp;&nbsp; [</FONT>&nbsp; <FONT color=#339933>OK</FONT><FONT color=#333366>&nbsp; ]</FONT></FONT></P><br />
<P>Paskiau perkrauname Apache:</P><br />
<P><FONT face="Courier New" color=#666699><FONT color=#333366>root{gildija.lt}# apachectl restart<BR>Shutting down httpd2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [</FONT>&nbsp; <FONT color=#339933>OK</FONT><FONT color=#333366>&nbsp; ]<BR>Starting httpd2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[</FONT>&nbsp; <FONT color=#339933>OK</FONT><FONT color=#333366>&nbsp; ]</FONT></FONT></P><br />
<P>Jei&nbsp;pavyko be klaidų, tai prie Apache konfigūravimo jau neteks grįžti. Bet tai dar ne viskas. Mes kolkas tik sukonfigūravome, kad Apache web serveris žinotų kurioje direktorijoje randasi bugs.gildija.lt domeno failai. Visas smagumas man prasidėjo tuomet, kai atsidaręs savo naršyklėje &#8220;bugs.gildija.lt&#8221; gavau pranešimą, kad tokio serverio naršyklė neranda. Suprantama, buvau per daug naivus tikėdamasis, kad Apache perkonfigūravimo užteks subdomeinui pakurti <img src='http://emilis.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</P><br />
<H2>DNS konfigūravimas</H2><br />
<P align=center><IMG alt="KompiuteriÅ³ iÅ¡dÄ—stymas" src="/uploads/wp-content/2006/12/servu_isdestymas.gif"></P><br />
<P><STRONG>4.</STRONG> Tam, kad jūsų subdomeiną atrastų jūsų naršyklė, reikia, kad jis būtų užregistruotas DNS serveriuose. Tai galima patikrinti pasinaudojus Windows&nbsp;komanda <EM>nslookup</EM> arba linux programėlėmis <EM>nslookup</EM>, <EM>dig</EM> arba&nbsp;<EM>host</EM>.</P><br />
<P>Taigi, patikriname savo subdomeiną:</P><br />
<P><FONT face="Courier New" color=#333366>C:\windows&gt;nslookup bugs.gildija.lt<BR>Server:&nbsp; ns1.telecom.lt<BR>Address:&nbsp; 212.59.0.1</FONT></P><br />
<P><FONT face="Courier New" color=#333366>*** ns1.telecom.lt can&#8217;t find bugs.gildija.lt: Non-existent domain</FONT></P><br />
<P>arba:</P><br />
<P><FONT face="Courier New" color=#333366>root{gildija.lt}# host bugs.gildija.lt<BR>Host bugs.gildija.lt not found: 3(NXDOMAIN)</FONT></P><br />
<P>Kaip matome naujo subdomeno neranda nei mūsų namų kompiuteris, nei pats serveris ant kurio&nbsp;subdomenas turi veikti. </P><br />
<P>Tam, kad naujas subdomenas būtų randamas, reikia sukonfigūruoti DNS serverio programą&nbsp;pirminiame mūsų domeno <EM>vardų serveryje</EM>. Pirminį vardų serverį galime sužinoti Lietuvos domenų registratoriaus <A href="http://www.domreg.lt/">DomReg</A> tinklapyje, pasinaudoję <A href="http://www.domreg.lt/cgi-bin/dns_reg?op=change&amp;lang=lt">adresų informacijos keitimo forma</A>. Mano (gildija.lt) atveju&nbsp;yra nurodytas pirminio vardų serverio adresas playdoll.admin.lt, kuris fiziškai yra tas pats gildija.lt serveris. Tai reiškia, kad DNS serverio programą man teko konfigūruoti tame pačiame serveryje. </P><br />
<P><FONT color=#cc0000><STRONG>(!)</STRONG></FONT> <EM>Jei jūsų domeno pirminį vardų serverį administruoja kažkas kitas, tai toliau galite neskaityti, o eiti rašyti laiško to serverio administratoriui. Jei jūs patys administruojate savo domeno pirminį vardų serverį, tai&nbsp;važiuojam toliau.</EM></P><br />
<P><STRONG>5.</STRONG> Mūsų serveryje (gildija.lt) yra suinstaliuotas <A href="http://www.isc.org/index.pl?/sw/bind/">BIND</A> DNS serveris vardu <EM>named</EM>. Kiek supratau naršydamas internete, tai gana paplitęs Linux DNS serveris. </P><br />
<P>Šio serverio konfiguraciniai failai (kad būtų smagiau) guli mūsų serverio <EM>/var/named</EM> direktorijoje (o aš tikėjausi juos rasti <EM>/etc/</EM> direktorijoje, kaip ir visus kitus konfigus, ech&nbsp;:| ). Pagrindinis konfigūracijos failas mūsų serveriui (gildija.lt) šiuo atveju taip ir vadinasi: &#8220;gildija.lt&#8221;.</P><br />
<P>Šiame faile gana greitai pastebėjau subdomenų konfigūraciją:</P><br />
<P><FONT face="Courier New" color=#333366>&#8230;<BR>vilius&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CNAME&nbsp;&nbsp; www<BR>emilis&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CNAME&nbsp;&nbsp; www<BR>zilvinas&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CNAME&nbsp;&nbsp; www<BR>&#8230;</FONT></P><br />
<P>Po šiais įrašais pridėjau naują įrašą:</P><br />
<P><FONT face="Courier New" color=#333366>bugs &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CNAME&nbsp;&nbsp; www</FONT></P><br />
<P>išsaugojau failą ir perkroviau <EM>named</EM> serverį:</P><br />
<P><FONT face="Courier New" color=#333366>root{gildija.lt}#&nbsp;<!--StartFragment --> /etc/rc.d/init.d/named restart<BR>Stopping named:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp; <FONT color=#339933>OK</FONT>&nbsp; ]<BR>Starting named:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp; <FONT color=#339933>OK</FONT>&nbsp; ]</FONT></P><br />
<P><STRONG><FONT color=#cc0000>(!)</FONT></STRONG> <EM>Atkreipkit dėmesį į pilną kelią - jis skiriasi nuo named programos kelio, nes šiuo atveju mes paleidžiame skriptą, kuris paleidžiamas&nbsp;kompiuterio startavimo metu.</EM></P><br />
<P><STRONG>6.</STRONG> Dabar patestuokime kas iš to išėjo:</P><br />
<P><FONT face="Courier New" color=#333366>C:\WINDOWS&gt;nslookup bugs.gildija.lt<BR>Server:&nbsp; ns1.telecom.lt<BR>Address:&nbsp; 212.59.0.1</FONT></P><br />
<P><FONT face="Courier New" color=#333366>*** ns1.telecom.lt can&#8217;t find bugs.gildija.lt: Non-existent domain</FONT></P><br />
<P>ir:</P><br />
<P><FONT face="Courier New" color=#333366>root{gildija.lt}# host bugs.gildija.lt<BR>bugs.gildija.lt is an alias for <A href="http://www.gildija.lt">www.gildija.lt</A>.<BR><A href="http://www.gildija.lt">www.gildija.lt</A> has address 213.197.142.106</FONT></P><br />
<P><FONT face="" color=#000000>Kaip matome mūsų web serveris jau atpažįsta subdomeną bugs.gildija.lt, bet Telekomo DNS serveriams jis dar neįkandamas. Jei esate šiek tiek susidūrę su DNS serverių darbu, galite pamanyti, kad Telekomo serveriai tiesiog dar nespėjo surasti naujojo subdomeno. Aš irgi iš pradžių taip maniau, laukiau valandą, kelias, pusę paros.. Galų gale draugas padėjo surasti kur bėda. O ji slepiasi <EM>named</EM> konfiguracinio failo <EM>gildija.lt</EM> viršuje, į kurį aš iš pradžių visai neatkreipiau dėmesio. </FONT></P><br />
<P><FONT face="" color=#000000>Viršuje&nbsp;konfiguracinio failo yra gana keistų parametrų rinkinys, prie kurio tikrai nesinori kišti nagų, kai gerai neišmanai:</FONT></P><br />
<P><FONT face="Courier New" color=#333366>@&nbsp;&nbsp;&nbsp;&nbsp;IN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SOA&nbsp;&nbsp;&nbsp;&nbsp; playdoll.admin.lt.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; info.gildija.lt. (<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2004072701 ; serial<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1H ; refresh<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;15M ; retry<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;14D ; expire<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;12H ; default_ttl<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<BR>&#8230;</FONT></P><br />
<P>Vienintelis parametras, kurį mums reikės pakeisti, tai dešimties skaičių eilutė: <EM>2004072701</EM>. Geriau į ją įsižiūrėjus galima suprasti, iš ko ji susideda: iš datos (<EM>20040727</EM> - 2004 metų 07 mėnesio 27 diena) ir eilės numerio (<EM>01</EM>). Pakeičiame šią eilutę, taip, kad ji atitiktų šios dienos datą ir šios dienos konfiguracinio failo atnaujinimo numerį: <EM>2004080801</EM>. </P><br />
<P>Dabar vėl perkrauname named serverį (žr. aukščiau). Po perkrovimo man nereikėjo laukti nė vienos minutės ir naujas subdomenas iškart tapo pasiekiamas iš&nbsp;nutolusio kompiuterio:</P><br />
<P><FONT color=#333366>C:\WINDOWS&gt;nslookup bugs.gildija.lt<BR>Server:&nbsp; ns1.telecom.lt<BR>Address:&nbsp; 212.59.0.1</FONT></P><br />
<P><FONT color=#333366>Non-authoritative answer:<BR>Name:&nbsp;&nbsp;&nbsp; </FONT><A href="http://www.gildija.lt"><FONT color=#333366>www.gildija.lt</FONT></A><BR><FONT color=#333366>Address:&nbsp; 213.197.142.106<BR>Aliases:&nbsp; bugs.gildija.lt</FONT></P><br />
<P>Atsidariau naująjį adresą savo naršyklėje, pamačiau tai ką tikėjausi išvysti (testinį puslapį, kurį pats buvau sukūręs :] ) ir galėjau eiti kurti svetainės.</P><br />
<H2>Suma sumarum</H2><br />
<P>Tikiuosi kamnors bus naudinga tai, ką čia surašiau. Šiuo straipsneliu nepretenduoju į rimtą dokumentaciją. Rašiau paskubomis, jei kam užklius rašybos, skyrybos, stiliaus&nbsp;ar logikos klaidos, prašau apie jas pranešti (<A href="mailto:emilis.d@gmail.com">emilis.d@gmail.com</A>). Nesu tikras dėl terminų, kuriuos naudojau šiame straipsnyje. Jei jus &#8220;pjauna&#8221; mano vartojami anglicizmai, būsiu dėkingas, jei pasiūlysite lietuviškus atitikmenis.</P><br />
<P>Linux guru ir hacker&#8217;ių prašau pažiūrėti į straipsnio turinį atlaidžiai. Jei radote klaidų (ypač dėl netikslumų susijusių su tuo, kaip iš tikro veikia serveriai Linux aplinkoje) - parašykite komentaruose. Jei nuspręsite parašyti teisingą straipsnelį šia tema, leidžiu panaudoti&nbsp;bet kurią šio&nbsp;straipsnio teksto dalį&nbsp;pagal <A href="http://creativecommons.org/licenses/by-nc-sa/2.0/">Creative Commons Attribution-NonCommercial-ShareAlike 2.0 licenciją</A>.</P>
</p>
]]></content:encoded>
			<wfw:commentRss>http://emilis.info/straipsniai/vhosts_zaliems/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
