1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 3<html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head><!-- 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 5 This file is generated from xml source: DO NOT EDIT 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 7 --> 8<title>İsme Dayalı Sanal Konaklar - Apache HTTP Sunucusu</title> 9<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> 10<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> 11<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" /> 12<script src="/style/scripts/prettify.js" type="text/javascript"> 13</script> 14 15<link href="/images/favicon.ico" rel="shortcut icon" /></head> 16<body id="manual-page"><div id="page-header"> 17<p class="menu"><a href="/mod/">Modüller</a> | <a href="/mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="/glossary.html">Terimler</a> | <a href="/sitemap.html">Site Haritası</a></p> 18<p class="apache">Apache HTTP Sunucusu Sürüm 2.2</p> 19<img alt="" src="/images/feather.gif" /></div> 20<div class="up"><a href="./"><img title="<-" alt="<-" src="/images/left.gif" /></a></div> 21<div id="path"> 22<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Sunucusu</a> > <a href="http://httpd.apache.org/docs/">Belgeleme</a> > <a href="../">Sürüm 2.2</a> > <a href="./">Sanal Konaklar</a></div><div id="page-content"><div id="preamble"><h1>İsme Dayalı Sanal Konaklar</h1> 23<div class="toplang"> 24<p><span>Mevcut Diller: </span><a href="/de/vhosts/name-based.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> | 25<a href="/en/vhosts/name-based.html" hreflang="en" rel="alternate" title="English"> en </a> | 26<a href="/fr/vhosts/name-based.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 27<a href="/ja/vhosts/name-based.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 28<a href="/ko/vhosts/name-based.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 29<a href="/tr/vhosts/name-based.html" title="Türkçe"> tr </a></p> 30</div> 31 32 <p>Bu belgede isme dayalı sanal konakların ne zaman, nasıl kullanılacakları 33 açıklanmıştır.</p> 34</div> 35<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#namevip">İsme dayalı ve IP’ye dayalı Sanal Konaklar</a></li> 36<li><img alt="" src="/images/down.gif" /> <a href="#using">İsme Dayalı Sanal Konakların Kullanımı</a></li> 37<li><img alt="" src="/images/down.gif" /> <a href="#compat">Artık Tarihe Karışmış Tarayıcılarla Uyumluluk</a></li> 38</ul><h3>Ayrıca bakınız:</h3><ul class="seealso"><li><a href="ip-based.html">IP Adresine Dayalı Sanal Konaklar</a></li><li><a href="details.html">Konak Eşlemenin Derinliğine İncelenmesi</a> 39</li><li><a href="mass.html">Devingen olarak Yapılandırılan Kütlesel Sanal 40Barındırma</a></li><li><a href="examples.html">Çok kullanılan sanal konak yapılandırma 41örnekleri</a></li><li><a href="examples.html#serverpath">ServerPath yapılandırma örneği</a> 42</li></ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div> 43<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 44<div class="section"> 45<h2><a name="namevip" id="namevip">İsme dayalı ve IP’ye dayalı Sanal Konaklar</a></h2> 46 47 <p>IP’ye dayalı sanal konaklarda sunulacak sanal konağı doğru tespit 48 edebilmek için bağlantının yapıldığı IP adresine bakılır. Bu bakımdan her 49 konak için ayrı bir IP adresine gereksinim vardır. İsme dayalı sanal 50 konaklarda ise sunucu, istemcinin HTTP başlığının bir parçası olarak 51 gönderdiği konak adını kullanır. Bu teknikte aynı IP adresini çok sayıda 52 farklı konak kullanabilir.</p> 53 54 <p>İsme dayalı sanal barındırma nispeten daha kolaydır, çünkü her konak 55 ismini doğru IP adresiyle eşlemek için DNS sunucunuzu yapılandırdıktan 56 sonra Apache HTTP sunucusunu farklı konak isimlerini tanıyacak şekilde 57 yapılandırmanız yeterli olur. İsme dayalı sanal barındırma ayrıca zaten 58 kıt olan IP adreslerine talebi de azaltır. Bu nedenle, açıkça IP’ye dayalı 59 sanal konakları talep eden donanım kullanmadıkça isme dayalı sanal konaklar 60 kullanmalısınız. SNI desteksiz bir <code class="module"><a href="/mod/mod_ssl.html">mod_ssl</a></code> sürümü 61 (Apache'nin 2.2.12 sürümüne kadar standart) kullanmıyorsanız, istemci 62 desteğine bağlı IP’ye dayalı sanal konaklar için geçerli tarihsel sebepler, 63 genel amaçlı bir HTTP sunucusu için artık uygulanabilir değildir.</p> 64 65</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 66<div class="section"> 67<h2><a name="using" id="using">İsme Dayalı Sanal Konakların Kullanımı</a></h2> 68 69<table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="/mod/core.html">core</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code></li><li><code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code></li><li><code class="directive"><a href="/mod/core.html#serveralias">ServerAlias</a></code></li><li><code class="directive"><a href="/mod/core.html#servername">ServerName</a></code></li><li><code class="directive"><a href="/mod/core.html#serverpath">ServerPath</a></code></li><li><code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code></li></ul></td></tr></table> 70 71 <p>İsme dayalı sanal konakları kullanmak için, bu konaklar için istekleri 72 kabul edecek sunucuya IP adresini (ve muhtemelen portu da) 73 belirtmelisiniz. Bu işlem <code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code> yönergesiyle yapılır. Normal 74 şartlar altında sunucu üzerinde bütün IP adreslerinin kullanılması 75 gerekir; bunun için <code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code> 76 yönergesine argüman olarak <code>*</code> belirtebilirsiniz. Çok sayıda 77 port kullanmayı planlıyorsanız (SSL çalıştırmak gibi), argümana 78 <code>*:80</code> şeklinde port ekleyebilirsiniz. Yalnız, <code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code> yönergesinde bir IP adresi 79 belirtmiş olmakla sunucunun kendiliğinden o IP adresini dinlemeyeceğine 80 dikkat ediniz. Bu konuda ayrıntılı bilgi edinmek için <a href="/bind.html">Apache’nin kullanacağı adreslerin ve portların 81 ayarlanması</a> belgesine bakınız. Ayrıca, sunucuda, burada belirttiğiniz 82 IP adresine sahip bir ağ arabirimi olmalıdır.</p> 83 84 <p>Sonraki adım sunacağınız her konak için ayrı bir <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> bölümü oluşturmaktır. 85 <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> 86 yönergesinin argümanı ile eşleşen bir <code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code> yönergesi tanımlanmış olmalıdır 87 (değer normalde "*:80" olacaktır). Her <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> bölümü içinde sunulan konağı 88 belirtmek üzere en azından bir adet <code class="directive"><a href="/mod/core.html#servername">ServerName</a></code> yönergesine ve konak içeriğinin dosya 89 sisteminde bulunduğu yeri gösteren bir <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> yönergesine 90 ihtiyacınız olacaktır.</p> 91 92 <div class="note"><h3>Ana konağı unutmayın</h3> 93 <p>Mevcut sitenize sanal konaklar eklerseniz, mevcut siteniz için de bir 94 <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> bölümü 95 oluşturmalısınız. Bu sanal konak bölümü içinde kullanacağınız 96 <code class="directive"><a href="/mod/core.html#servername">ServerName</a></code> ve <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> yönergelerinin argümanları, bu 97 yönergelerin sunucu geneli için belirttiğiniz değerlerini 98 içermelidir. Bu sanal konağı yapılandırma dosyanızdaki ilk sanal konak 99 yapın ki, öntanımlı konak olsun.</p> 100 </div> 101 102 <p>Örnek olarak, <code>www.biralan.tld</code> adresinden sitenizi sunmakta 103 olduğunuzu ve bunun yanına aynı IP adresini kullanan 104 <code>www.digeralan.tld</code> sanal konağını eklemek istediğinizi 105 varsayalım. Bunun için <code>httpd.conf</code> dosyanıza basitçe şu 106 satırları ekleyebilirsiniz:</p> 107 108 <div class="example"><p><code> 109 NameVirtualHost *:80<br /> 110 <br /> 111 <VirtualHost *:80><br /> 112 <span class="indent"> 113 ServerName www.biralan.tld<br /> 114 ServerAlias biralan.tld *.biralan.tld<br /> 115 DocumentRoot /siteler/biralan<br /> 116 </span> 117 </VirtualHost><br /> 118 <br /> 119 <VirtualHost *:80><br /> 120 <span class="indent">ServerName www.digeralan.tld<br /> 121 DocumentRoot /siteler/digeralan<br /> 122 </span> 123 </VirtualHost><br /> 124 </code></p></div> 125 126 <p>İsterseniz, <code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code> ve 127 <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> 128 yönergelerinde argüman olarak <code>*</code> yerine doğrudan bir IP adresi 129 belirtebilirsiniz. Hatta, daha sonra, isme dayalı sanal konakları bir IP 130 adresinden ve IP’ye dayalı olanları veya isme dayalı diğer bir sanal konak 131 grubunu diğer IP adreslerinden sunmak isteyebilirsiniz.</p> 132 133 <p>Çoğu sunucunun birden fazla isim ile erişilebilir olması istenir. Bu, 134 <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> bölümü 135 içine bir <code class="directive"><a href="/mod/core.html#serveralias">ServerAlias</a></code> yönergesi 136 yerleştirmek suretiyle mümkün olur. Örneğin yukarıdaki örnekte, 137 kullanıcıların aynı siteye farklı isimlerle erişmelerini mümkün kılmak 138 için bölüm içine şu satırı ekleyebilirsiniz:</p> 139 140 <div class="example"><p><code> 141 ServerAlias biralan.tld *.biralan.tld 142 </code></p></div> 143 144 <p>Böylece <code>biralan.tld</code> alanındaki tüm konaklar için gelen 145 isteklere <code>www.biralan.tld</code> sanal konağından hizmet sunulmuş 146 olur. Konak isimleriyle eşleşmek üzere dosya ismi kalıp karakterleri 147 <code>*</code> ve <code>?</code> kullanılabilir. Şüphesiz bu isimleri sırf 148 <code class="directive"><a href="/mod/core.html#servername">ServerName</a></code> veya 149 <code>ServerAlias</code> yönergesinde belirtmiş olmakla bu isimleri 150 erişilebilir kılamazsınız. Öncelikle, bu isimleri sunucunuzdaki IP 151 adresleriyle eşlemek üzere yapılandıracağınız bir DNS sunucunuz 152 olmalıdır.</p> 153 154 <p><code>VirtualHost</code> içindeki isimlerin tamamı (jokersiz) bir 155 <code>ServerAlias</code> gibi ele alınır (fakat başka bir 156 <code>ServerAlias</code> ile geçersiz kılınmazlar).</p> 157 158 <p>Son olarak, sanal konak yapılandırmanıza, <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> bölümlerinin içine başka yönergeler 159 yerleştirerek ince ayar çekebilirsiniz. Çoğu yönerge bu bölümlere 160 yerleştirilebilir ve sadece o sanal konakla ilgili yapılandırmayı 161 değiştirmek için kullanılabilir. Belli bir yönergenin sanal konak 162 bölümlerinde kullanılıp kullanılmayacağını yönergenin açıklamasında <a href="/mod/directive-dict.html#Context">Bağlam</a> satırına bakarak 163 öğrenebilirsiniz. <em>Ana sunucu bağlamındaki</em> (<code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> bölümleri dışındaki) 164 yapılandırma yönergelerinden sadece sanal konak bölümlerinde geçersiz 165 kılınmamış olanlar kullanılacaktır.</p> 166 167 <p>Sunucuya bir istek geldiğinde, sunucu önce IP adresiyle eşleşmesi olası 168 <code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code> bölümleri var mı diye 169 bakar. Varsa, IP adresini eşleştirmek için <code class="directive"><a href="/mod/core.html#namevirtualhost">NameVirtualHost</a></code> bölümlerine tek tek bakar ve 170 istenen konak ismi ile eşleşen bir <code class="directive"><a href="/mod/core.html#servername">ServerName</a></code> veya <code>ServerAlias</code> yönergesi bulmaya 171 çalışır. Bir tane bulduğunda, sunucu için onun yapılandırmasını kullanır. 172 İsimle eşleşen bir sanal konak bulamazsa IP adresiyle eşleşen <strong>ilk 173 sanal konağın</strong> yapılandırmasını kullanır.</p> 174 175 <p>Bir önkabul olarak yapılandırma dosyasında rastlanan ilk sanal konak 176 <em>öntanımlı</em> sanal konaktır. IP adresi bir sanal konakla eşleştiği 177 takdirde <em>ana sunucunun</em> <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> değeri <strong>asla</strong> kullanılmayacaktır. 178 Sanal konaklardan hiçbiriyle eşleşmeyen istekler için özel bir 179 yapılandırmanız olsun isterseniz, bu yapılandırmayı yapılandırma 180 dosyanızdaki ilk <code class="directive"><a href="/mod/core.html#virtualhost"><VirtualHost></a></code> bölümüne yerleştirmeniz 181 yetecektir.</p> 182 183</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 184<div class="section"> 185<h2><a name="compat" id="compat">Artık Tarihe Karışmış Tarayıcılarla Uyumluluk</a></h2> 186 187 <p>Evvelce de bahsedildiği gibi, isme dayalı sanal konakların gerektiği gibi 188 çalışması için gerekli veriyi göndermeyen bazı istemciler vardır. Bu 189 istemcilere daima o IP adresinin yapılandırma dosyasındaki ilk sanal 190 konağının (isme dayalı <cite>başat</cite> sanal konak) sayfaları 191 gönderilir.</p> 192 193 <div class="note"><h3>Ne kadar eski?</h3> 194 <p>Lütfen dikkat edin, eski deyince gerçekten de antika demek istiyoruz. 195 Günümüzde bu tür tarayıcılara rastlamanız neredeyse imkansızdır. Günümüz 196 tarayıcılarının hepsi isme dayalı sanal konakların gerektirdiği 197 <code>Host</code> başlığını gönderirler.</p> 198 </div> 199 200 <p>Olayı fazla germeden <code class="directive"><a href="/mod/core.html#serverpath">ServerPath</a></code> 201 yönergesini kullanarak sorunun çevresinden dolanmak mümkündür:</p> 202 203 <p>Örnek yapılandırma:</p> 204 205 <div class="example"><p><code> 206 NameVirtualHost 111.22.33.44<br /> 207 <br /> 208 <VirtualHost 111.22.33.44><br /> 209 <span class="indent"> 210 ServerName www.biralan.tld<br /> 211 ServerPath /biralan<br /> 212 DocumentRoot /siteler/biralan<br /> 213 </span> 214 </VirtualHost><br /> 215 </code></p></div> 216 217 <p>Bu ne anlama geliyor? Anlamı, "<code>/biralan</code>" ile başlayan her 218 URI isteği <code>www.biralan.tld</code> sanal konağı tarafından sunulacak, 219 demektir. Yani, tüm istemcilerin 220 <code>http://www.biralan.tld/biralan/</code> olarak eriştiği yere 221 <code>Host:</code> başlığı gönderen istemciler 222 <code>http://www.biralan.tld/</code> olarak erişirler.</p> 223 224 <p>Bunu gerçekleştirebilmek için başat sanal konağın baş sayfasına 225 <code>http://www.biralan.tld/biralan/</code> için bir bağ koyduktan sonra 226 sanal konağın sayfalarında ya tamamen göreli bağlar 227 ("<code>dosya.html</code>", "<code>/simgeler/resim.png</code>" gibi) 228 veya <code>/biralan/</code> ile öncelenmiş bağlar 229 ("<code>http://www.biralan.tld/biralan/muht/dosya.html</code>" veya 230 "<code>/biralan/muht/dosya.html</code>" gibi) kullanın.</p> 231 232 <p>Bu işlem biraz disiplin gerektirse de bu yazılanlara sıkı sıkıya bağlı 233 kalarak hem eski hem de yeni tarayıcıların sayfalarınızı doğru 234 görüntülemesini sağlamış olursunuz.</p> 235 236</div></div> 237<div class="bottomlang"> 238<p><span>Mevcut Diller: </span><a href="/de/vhosts/name-based.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> | 239<a href="/en/vhosts/name-based.html" hreflang="en" rel="alternate" title="English"> en </a> | 240<a href="/fr/vhosts/name-based.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 241<a href="/ja/vhosts/name-based.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 242<a href="/ko/vhosts/name-based.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 243<a href="/tr/vhosts/name-based.html" title="Türkçe"> tr </a></p> 244</div><div class="top"><a href="#page-header"><img src="/images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Yorum</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div> 245<script type="text/javascript"><!--//--><![CDATA[//><!-- 246var comments_shortname = 'httpd'; 247var comments_identifier = 'http://httpd.apache.org/docs/2.2/vhosts/name-based.html'; 248(function(w, d) { 249 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 250 d.write('<div id="comments_thread"><\/div>'); 251 var s = d.createElement('script'); 252 s.type = 'text/javascript'; 253 s.async = true; 254 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 255 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 256 } 257 else { 258 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 259 } 260})(window, document); 261//--><!]]></script></div><div id="footer"> 262<p class="apache">Copyright 2013 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> altında lisanslıdır.</p> 263<p class="menu"><a href="/mod/">Modüller</a> | <a href="/mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="/glossary.html">Terimler</a> | <a href="/sitemap.html">Site Haritası</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- 264if (typeof(prettyPrint) !== 'undefined') { 265 prettyPrint(); 266} 267//--><!]]></script> 268</body></html>