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
8 <title>Apache ve DNS ile ilgili Konular - 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" />
12 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
13 <body id="manual-page"><div id="page-header">
14 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="./faq/">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p>
15 <p class="apache">Apache HTTP Sunucusu Sürüm 2.0</p>
16 <img alt="" src="./images/feather.gif" /></div>
17 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
19 <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.0</a></div><div id="page-content"><div id="preamble"><h1>Apache ve DNS ile ilgili Konular</h1>
21 <p><span>Mevcut Diller: </span><a href="./en/dns-caveats.html" hreflang="en" rel="alternate" title="English"> en </a> |
22 <a href="./es/dns-caveats.html" hreflang="es" rel="alternate" title="Español"> es </a> |
23 <a href="./fr/dns-caveats.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
24 <a href="./ja/dns-caveats.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
25 <a href="./ko/dns-caveats.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
26 <a href="./tr/dns-caveats.html" title="Türkçe"> tr </a></p>
29 <p>Bu sayfanın konusu şöyle özetlenebilirdi: Yapılandırma dosyalarınızda
30 DNS sorguları yapılmasını gerektirecek ayarlamalardan kaçınınız. Eğer
31 yapılandırma dosyalarınızda DNS sorgusu yapılarak çözümlenebilecek
32 adresler bulunursa sunucunuz beklenmedik davranışlar (hiç
33 başlamayabilir) gösterebileceği gibi hizmet reddi veya hizmet
34 hırsızlığı (bazı kullanıcıların diğerlerine giden sayfaları çalma
35 olasılığı dahil) saldırılarına açık hale gelebilir.</p>
37 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#example">Basit Bir Örnek</a></li>
38 <li><img alt="" src="./images/down.gif" /> <a href="#denial">Hizmet Reddi</a></li>
39 <li><img alt="" src="./images/down.gif" /> <a href="#main">"Ana Sunucu" Adresi</a></li>
40 <li><img alt="" src="./images/down.gif" /> <a href="#tips">Bu Sorunlardan Kaçınmak için İpuçları</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#appendix">Ek: Ufuk Turu</a></li>
43 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
45 <h2><a name="example" id="example">Basit Bir Örnek</a></h2>
48 <div class="example"><p><code>
49 <VirtualHost falan.fesmekan.dom>
51 ServerAdmin filanca@fesmekan.dom <br />
52 DocumentRoot /siteler/fesmekan
57 <p>Apache’nin beklendiği gibi işlemesi için her sanal konak için iki
58 veriye mutlaka ihtiyacı vardır: <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> ve sunucunun bağlantı kabul edip hizmet
59 sunacağı en az bir IP adresi. Yukarıdaki örnekte IP adresi
60 bulunmamaktadır, dolayısıyla Apache, <code>falan.fesmekan.dom</code>
61 adresi için bir DNS sorgusu yapmak zorundadır. Eğer sunucu,
62 yapılandırma dosyasını çözümlediği sırada bir sebeple DNS sunucusuna
63 erişemezse bu sanal konak <em>yapılandırılmayacak</em> (hApache 1.2
64 öncesinde sunucu hiç başlatılmazdı) ve bu sanal konağa yapılan
65 isteklere yanıt verilemeyecektir.</p>
67 <p><code>falan.fesmekan.dom</code>’un 192.168.2.1 IP adresine sahip
68 olduğunu varsayarsak yapılandırma şöyle olurdu:</p>
70 <div class="example"><p><code>
71 <VirtualHost 192.168.2.1> <br />
73 ServerAdmin filanca@fesmekan.dom <br />
74 DocumentRoot /siteler/fesmekan
79 <p>Ancak, bu sefer de bu sanal konağın sunucu ismini öğrenmek için
80 Apache’nin bir ters DNS sorgusu yapması gerekecektir. Eğer bu sorgu
81 başarısız olursa kısmi bir yapılandırmaya gidilir (Apache 1.2 öncesinde
82 sunucu hiç başlatılmazdı). Eğer sanal konak isme dayalı ise sanal konak
83 kısmen bile yapılandırılmaz. IP’ye dayalı sanal konaklar büyük oranda
84 çalışır, fakat sunucu ismini içeren tam bir adres üretilmesini
85 gerektiren bir durumda, sunucu geçerli bir adres üretemez.</p>
87 <p>Her iki sorunu da çözen yapılandırma şöyle olurdu:</p>
89 <div class="example"><p><code>
90 <VirtualHost 192.168.2.1> <br />
92 ServerName falan.fesmekan.dom <br />
93 ServerAdmin filanca@fesmekan.dom <br />
94 DocumentRoot /siteler/fesmekan
98 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
100 <h2><a name="denial" id="denial">Hizmet Reddi</a></h2>
103 <p>Hizmet reddinin meydana gelebilecek (en az) iki türü vardır.
104 Apache’nin 1.2 öncesi bir sürümünü kullanıyorsanız sanal
105 konaklarınızdan herhangi biri için yukarıdaki iki sorgudan biri
106 başarısız olursa sunucunuzu asla başlatamazsınız. Bazı durumlarda, DNS
107 sorgularından alınacak yanıtlar sizin denetiminizde olmayabilir;
108 örneğin <code>fesmekan.dom</code> müşterilerinizden birine aitse ve
109 kendi DNS sunucuları varsa <code>falan.fesmekan.dom</code> kaydını
110 silerek sunucunuzun hiç başlatılamamasına (1.2 öncesi) sebep
113 <p>Diğer türü biraz daha sinsidir. Şöyle bir yapılandırmanız olsun:</p>
115 <div class="example"><p><code>
116 <VirtualHost falan.fesmekan.dom><br />
117 <span class="indent">
118 ServerAdmin filanca@fesmekan.dom <br />
119 DocumentRoot /siteler/fesmekan
121 </VirtualHost><br />
123 <VirtualHost misal.mesela.dom><br />
124 <span class="indent">
125 ServerAdmin falanca@mesela.dom<br />
126 DocumentRoot /siteler/mesela<br />
131 <p><code>falan.fesmekan.dom</code>’a 192.168.2.1,
132 <code>misal.mesela.dom</code>’a 192.168.2.2 atadığınızı fakat,
133 <code>mesela.dom</code>’un DNS kaydının sizin denetiminizde olmadığını
134 varsayalım. Bu yapılandırmayla, <code>mesela.dom</code>’u
135 <code>fesmekan.dom</code>’a giden tüm trafiği çalabilecek duruma
136 getirirsiniz. Bunu gerçekleştirmek için DNS kaydında
137 <code>misal.mesela.dom</code>’a 192.168.2.1 adresinin atanması
138 yeterlidir. Kendi DNS’lerine sahip olduklarından dolayı
139 <code>misal.mesela.dom</code>’a istedikleri IP adresini atamaktan
140 onları alıkoyamazsınız.</p>
142 <p>192.168.2.1’e gelen isteklerin hepsine
143 (<code>http://falan.fesmekan.dom/biryer</code> şeklinde yazılan
144 adresler dahil) <code>mesela.dom</code> sanal konağınca hizmet
145 sunulacaktır. Apache’nin gelen istekleri sunduğu sanal konaklarla nasıl
146 eşleştirdiğini bilirseniz bunun sebebini kolayca anlarsınız. Bunu
147 kabataslak açıklayan <a href="vhosts/details.html">bir belgemiz
149 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
150 <div class="section">
151 <h2><a name="main" id="main">"Ana Sunucu" Adresi</a></h2>
154 <p>Apache 1.1’de <a href="vhosts/name-based.html">isme dayalı sanal konak
155 desteği</a>ne ek olarak, Apache’nin, <code class="program"><a href="./programs/httpd.html">httpd</a></code>’nin
156 çalıştığı makinenin IP adres(ler)ini de bilmeye ihtiyacı vardır. Bu
157 adresi elde etmek için sunucu, ya sunucu genelinde geçerli <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> yönergesine bakar ya da bir C
158 işlevi olan <code>gethostname</code>’i kullanır (işlev, komut
159 isteminden <code>hostname</code> komutuna dönen yanıtın aynısını
160 döndürür) ve ardından bu adresle ilgili olarak bir DNS sorgusu yapar.
161 Bu sorgudan kaçınmanın henüz bir yolu yoktur.</p>
163 <p>Eğer bu sorgunun (DNS sunucusunun çökmüş olması gibi bir nedenle)
164 başarısız olabileceğinden korkuyorsanız, makine ismini ve IP adresini
165 <code>/etc/hosts</code> dosyanıza yazabilirsiniz (Makinenizin düzgün
166 olarak açılabilmesi için zaten bu kaydı yapmış olmanız gerekir).
167 Kullandığınız işletim sistemine bağlı olarak bu kaydın
168 <code>/etc/resolv.conf</code> veya <code>/etc/nsswitch.conf</code>
169 dosyasında bulunması gerekebilir.</p>
171 <p>Herhangi bir nedenle sunucunuz bir DNS sorgusu yapmıyorsa veya
172 yapmamalıysa, Apache’yi <code>HOSTRESORDER</code> ortam değişkenine
173 "<code>local</code>" değerini atadıktan sonra çalıştırabilirsiniz. Bu
174 tamamen işletim sistemine ve kullandığınız çözümleyici kütüphanelere
175 bağlıdır. Ayrıca, ortamı denetlemek için <code class="module"><a href="./mod/mod_env.html">mod_env</a></code>
176 kullanmıyorsanız, CGI’ler de bundan etkilenir. En iyisi işletim
177 sisteminizin SSS belgelerini ve kılavuz sayfalarını okumaktır.</p>
178 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
179 <div class="section">
180 <h2><a name="tips" id="tips">Bu Sorunlardan Kaçınmak için İpuçları</a></h2>
184 <li><code class="directive"><a href="./mod/core.html#virtualhost">VirtualHost</a></code> yönergelerinizde
185 IP adresleri kullanınız.</li>
187 <li><code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code> yönergelerinizde
188 IP adresleri kullanınız.</li>
190 <li>Tüm sanal konakların ayrı birer <code class="directive"><a href="./mod/core.html#servername">ServerName</a></code> yönergesi olsun.</li>
192 <li>Hiçbir sayfa sunulmayan bir <code><VirtualHost
193 _default_:*></code> sanal konağınız olsun.</li>
195 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
196 <div class="section">
197 <h2><a name="appendix" id="appendix">Ek: Ufuk Turu</a></h2>
200 <p>DNS ile ilgili durum hiç de arzu edildiği gibi değildir. Apache 1.2
201 için, DNS sorguları başarısız olsa bile sunucunun başlatılabilmesini
202 sağlamaya çalıştık, fakat belki yapabildiğimizden daha da iyisi
203 mümkündür. Günümüz Genel Ağ’ında IP adresleri sık sık değiştiğinden
204 yapılandırma dosyasına doğrudan IP adresini yazma gerekliliği asla arzu
205 edilen davranış değildir.</p>
207 <p>Yukarıda nasıl yapıldığı açıklanan hizmet hırsızlığı saldırısına karşı
208 önlem olarak, normal sorgudan dönen IP adresine bir ters DNS sorgusu
209 yapıp bu iki sonucu karşılaştırmak ve eşleşmeme durumunda sanal konağı
210 iptal etmek bir çözüm olabilir. Fakat bunun mümkün olabilmesi için
211 uygun bir ters DNS kaydına ihtiyaç vardır. (FTP sunucuları ve TCP
212 sarmalayıcılar tarafından yapılan çifte ters DNS sorgusu kullanımından
213 dolayı çoğu ağ yöneticisi bu konuda zaten bilgi sahibidir.)</p>
215 <p>Her halükarda, IP adreslerinin kullanılmaması nedeniyle yapılan DNS
216 sorgularının başarısız olması durumunda sanal konaklı bir sunucuyu
217 düzgün bir şekilde başlatmak olası görünmektedir. Yapılandırmayı kısmen
218 iptal etmek gibi kısmi çözümler, sunucudan beklentinizin ne olduğuna
219 bağlı olarak sunucuyu hiç başlatmamaktan daha iyi olabilir.</p>
221 <p>HTTP/1.1’de belirtildiği gibi <code>Host</code> başlığını göndererek
222 işlem yapabilen tarayıcılar ve vekiller IP’ye dayalı sanal konak
223 kullanımını tamamen ortadan kaldırmanın mümkün olabileceğini
224 göstermektedir. Bu durumda yapılandırmanın çözümlenmesi aşamasında DNS
225 sorgusu yapma gereği kalmayacaktır. Fakat 1997 Mart’ından beri önemli
226 sunucular üzerinde bunların yeterince geniş bir uygulama alanı
227 bulmadığı görülmektedir.</p>
229 <div class="bottomlang">
230 <p><span>Mevcut Diller: </span><a href="./en/dns-caveats.html" hreflang="en" rel="alternate" title="English"> en </a> |
231 <a href="./es/dns-caveats.html" hreflang="es" rel="alternate" title="Español"> es </a> |
232 <a href="./fr/dns-caveats.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
233 <a href="./ja/dns-caveats.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
234 <a href="./ko/dns-caveats.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
235 <a href="./tr/dns-caveats.html" title="Türkçe"> tr </a></p>
236 </div><div id="footer">
237 <p class="apache">Copyright 2009 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>
238 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="./faq/">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p></div>