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>Sanal Konak Örnekleri - 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.min.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.4</p>
19<img alt="" src="/images/feather.gif" /></div>
20<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
21<div id="path">
22<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Sunucusu</a> &gt; <a href="http://httpd.apache.org/docs/">Belgeleme</a> &gt; <a href="../">Sürüm 2.4</a> &gt; <a href="./">Sanal Konaklar</a></div><div id="page-content"><div id="preamble"><h1>Sanal Konak Örnekleri</h1>
23<div class="toplang">
24<p><span>Mevcut Diller: </span><a href="/en/vhosts/examples.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
25<a href="/fr/vhosts/examples.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
26<a href="/ja/vhosts/examples.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
27<a href="/ko/vhosts/examples.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
28<a href="/tr/vhosts/examples.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
29</div>
30
31
32    <p>Bu belgede <a href="index.html">sanal konaklarla</a> ile ilgili olarak
33      karşılaşılması olası tüm  senaryolara yer verilmeye çalışılmıştır.
34      Buradaki senaryolar, tek bir  sunucu üzerinde  <a href="name-       based.html">isme dayalı</a> veya <a href="ip-based.html">IP’ye dayalı</a>
35      sanal konaklar aracılığıyla çok sayıda sitenin sunumu ile ilgilidir.
36    </p>
37
38</div>
39<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#purename">Tek bir IP ile çok sayıda isme dayalı site</a></li>
40<li><img alt="" src="/images/down.gif" /> <a href="#twoips">IP adresleri farklı çok sayıda isme dayalı site</a></li>
41<li><img alt="" src="/images/down.gif" /> <a href="#intraextra">Aynı içeriği farklı IP adresleriyle sunmak
42    (örn., dahili ve harici ağlara)</a></li>
43<li><img alt="" src="/images/down.gif" /> <a href="#port">Farklı portlarla farklı siteler</a></li>
44<li><img alt="" src="/images/down.gif" /> <a href="#ip">IP’ye dayalı sanal konaklar</a></li>
45<li><img alt="" src="/images/down.gif" /> <a href="#ipport">Hem IP’ye hem de porta dayalı sanal konaklar</a></li>
46<li><img alt="" src="/images/down.gif" /> <a href="#mixed">Hem isme hem de IP‘ye dayalı sanal konaklar</a></li>
47<li><img alt="" src="/images/down.gif" /> <a href="#proxy"><code>Virtualhost</code> ve
48    <code>mod_proxy</code>’nin birlikte kullanımı</a></li>
49<li><img alt="" src="/images/down.gif" /> <a href="#default"><code>_default_</code> sanal konakları</a></li>
50<li><img alt="" src="/images/down.gif" /> <a href="#migrate">Bir isme dayalı sanal konağı bir IP’ye dayalı
51    sanal konakla yansılamak</a></li>
52<li><img alt="" src="/images/down.gif" /> <a href="#serverpath"><code>ServerPath</code> yönergesinin kullanımı</a></li>
53</ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div>
54<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
55<div class="section">
56<h2><a name="purename" id="purename">Tek bir IP ile çok sayıda isme dayalı site</a></h2>
57    
58
59    <p>Bu örnekte, makinenizin tek bir IP adresine sahip olduğunu ve bu
60      makineye <code>example.com</code> ve <code>example.org</code> şeklinde
61      (DNS A kayıtları sayesinde) farklı isimlerle erişilebildiğini
62      varsayalım.</p>
63
64    <div class="note"><h3>Bilginize</h3><p>Apache sunucusu üzerinde sanal konakları
65      yapılandırmakla bu konak isimleri için sihirli bir şekilde DNS
66      kayıtlarının da oluşturulmasını sağlamış olmazsınız. Bu isimler için
67      ilgili DNS kayıtlarında sizin IP adresinize çözümlenen A kayıtlarının
68      olması gerekir, yoksa sitenize kimse erişemez. Sitelere erişimi yerel
69      olarak denemek isterseniz, bu girdileri <code>hosts</code> dosyanıza
70      yazabilirsiniz. Fakat bu sadece sizin makinenizde çalışır. Yerel
71      ağınızdaki her makinenin <code>hosts</code> dosyasına bu girdileri
72      yazarak yerel ağdan erişimi bu yolla sağlayabilirsiniz ama dış ağdan
73      gelecek ziyaretçileriniz için DNS kayıtlarınızın olması şarttır.</p>
74    </div>
75
76    <pre class="prettyprint lang-config"># Apache’nin 80. portu dinlediğinden emin olalım
77Listen 80
78&lt;VirtualHost *:80&gt;
79  DocumentRoot /siteler/ecom
80  ServerName example.com
81
82  # Diğer yönergeler, burada ...
83&lt;/VirtualHost&gt;
84
85&lt;VirtualHost *:80&gt;
86  DocumentRoot /siteler/eorg
87  ServerName example.org
88
89  # Diğer yönergeler, burada ...
90&lt;/VirtualHost&gt;</pre>
91
92
93    <p>Yıldız imleri tüm adreslerle eşleşmeyi sağladığından ana sunucu
94      (yapılandırma dosyası genelindeki yapılandırma - sunucu geneli)
95      erişilebilir olmayacaktır. Yapılandırma
96      dosyasındaki <code>ServerName example.com</code> yönergeli konak, ilk
97      sanal konak olduğundan en yüksek önceliğe sahiptir ve
98      <cite>öntanımlı</cite> veya <cite>baskın</cite> site olarak davranır.
99      Yani, hiçbir <code>ServerName</code> yönergesi ile eşleşmeyen bir istek
100      alındığında bu istek ilk <code>VirtualHost</code> yapılandırması ile
101      karşılanır.</p>
102
103    <div class="note"><h3>Bilginize</h3>
104      <p>IP adresi ve porta dayalı ayrımı umursamıyorsanız, <code>*</code>
105        yerine kendi IP adresinizi yazabilirsiniz.</p>
106
107      <pre class="prettyprint lang-config">NameVirtualHost 192.168.1.22
108
109&lt;VirtualHost 192.168.1.22&gt;
110  # vs. ...
111&lt;/VirtualHost&gt;</pre>
112
113
114      <p>Bununla birlikte, IP adresinin önceden kestirilebilir olmadığı
115        sistemlerde, örneğin, hizmet sağlayıcınıza çevirmeli ağ ile bağlanıyor
116        ve onun rasgele atadığı bir IP adresi için bir devingen DNS çözümü
117        kullanıyorsanız, IP adresi değil de <code>*</code> kullanmak daha çok
118        işinize yarayacaktır. Yıldız imi her IP adresi ile eşleşeceğinden IP
119        adresiniz değişse bile bu yapılandırmayı değiştirmeden
120        kullanabilirsiniz.</p>
121    </div>
122
123    <p>Yukarıdaki yapılandırmayı hemen hemen tüm isme dayalı sanal konaklar
124      için kullanabilirsiniz. Bu yapılandırmanın çalışmayacağı tek durum,
125      farklı içerikleri farklı IP adreslerinden sunma gereğiyle
126      karşılaşmaktır.</p>
127
128  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
129<div class="section">
130<h2><a name="twoips" id="twoips">IP adresleri farklı çok sayıda isme dayalı site</a></h2>
131    
132
133    <div class="note"><h3>Bilginize</h3>
134      <p>Burada açıklanan teknikler istendiği kadar çok IP adresine
135        genişletilebilir.</p>
136    </div>
137
138    <p>Sunucunun iki IP adresi olsun. Birinden "ana sunucu"
139      (<code>192.168.1.2</code>) diğerinden <code>example.com</code>
140      <code>192.168.2.2</code> hizmet versin. Bu arada başka sanal konakları
141      da sunabilelim istiyoruz.</p>
142
143    <pre class="prettyprint lang-config">Listen 80
144
145# Bu, 192.168.1.2 adresindeki "ana sunucu" olsun
146ServerName sunucu.example.com
147DocumentRoot /siteler/anasunucu
148
149&lt;VirtualHost 192.168.1.20&gt;
150    DocumentRoot /siteler/ecom
151    ServerName example.com
152
153    # Diğer yönergeler, burada ...
154&lt;/VirtualHost&gt;
155
156&lt;VirtualHost 192.168.1.20&gt;
157    DocumentRoot /siteler/eorg
158    ServerName example.org
159
160    # Diğer yönergeler, burada ...
161&lt;/VirtualHost&gt;</pre>
162
163
164    <p><code>192.168.1.20</code> adresinden gelmeyen tüm isteklere ana sunucu
165      (<code>sunucu.example.com</code>), <code>192.168.1.20</code> adresinden
166      gelen sunucu ismi belirtmeyenler ile <code>Host:</code> başlığı
167      belirtmeyenlere ise  <code>example.com</code> hizmet verecektir.</p>
168
169  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
170<div class="section">
171<h2><a name="intraextra" id="intraextra">Aynı içeriği farklı IP adresleriyle sunmak
172    (örn., dahili ve harici ağlara)</a></h2>
173
174    <p>Sunucu makine iki IP adresine sahip olsun. Biri iç ağa
175      (<code>192.168.1.1</code>) diğeri dış ağa (<code>172.20.30.40</code>)
176      bakıyor olsun. <code>sunucu.example.com</code> ismi dış ağda dış ağa
177      bakan IP’ye, iç ağda ise iç ağa bakan IP’ye çözümleniyor olsun.</p>
178
179    <p>Bu durumda, sunucu hem iç hem de dış ağdan gelen isteklere aynı içerik,
180      dolayısıyla aynı <code>VirtualHost</code> bölümü ile hizmet
181      verebilir.</p>
182
183    <pre class="prettyprint lang-config">&lt;VirtualHost 192.168.1.1 172.20.30.40&gt;
184    DocumentRoot /siteler/sunucu
185    ServerName sunucu.example.com
186    ServerAlias sunucu
187&lt;/VirtualHost&gt;</pre>
188
189
190    <p>Artık, hem iç hem de dış ağdan gelen isteklere aynı
191      <code>VirtualHost</code> bölümünden hizmet sunulacaktır.</p>
192
193    <div class="note"><h3>Bilginize:</h3>
194      <p>İç ağdan istek yapan biri, tam nitelenmiş konak ismi
195        <code>sunucu.example.com</code> yerine makine ismini
196        (<code>sunucu</code>) kullanabilir (<code>ServerAlias sunucu</code>
197        satırına dikkat).</p>
198
199      <p>Ayrıca, yukarıdaki gibi iki ayrı IP adresi belirtmek yerine sadece
200        <code>*</code> belirtmekle sunucunun tüm IP adreslerine yine aynı
201        içerikle yanıt vereceğine dikkat ediniz.</p>
202    </div>
203
204  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
205<div class="section">
206<h2><a name="port" id="port">Farklı portlarla farklı siteler</a></h2>
207
208    <p>Aynı IP adresine sahip çok sayıda konak ismine sahip olduğunuzu ve
209      bunların bazılarının farklı portları kullanmasını istediğinizi
210      varsayalım. Aşağıdaki örnekte, isim eşleşmesinin, en iyi eşleşen IP
211      adresi ve port çifti saptandıktan sonra yer alması gösterilmiştir. </p>
212
213    <pre class="prettyprint lang-config">Listen 80
214Listen 8080
215
216&lt;VirtualHost 172.20.30.40:80&gt;
217    ServerName example.com
218    DocumentRoot /siteler/ecom-80
219&lt;/VirtualHost&gt;
220
221&lt;VirtualHost 172.20.30.40:8080&gt;
222    ServerName example.com
223    DocumentRoot /siteler/ecom-8080
224&lt;/VirtualHost&gt;
225
226&lt;VirtualHost 172.20.30.40:80&gt;
227    ServerName example.org
228    DocumentRoot /siteler/eorg-80
229&lt;/VirtualHost&gt;
230
231&lt;VirtualHost 172.20.30.40:8080&gt;
232    ServerName example.org
233    DocumentRoot /siteler/eorg-8080
234&lt;/VirtualHost&gt;</pre>
235
236
237  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
238<div class="section">
239<h2><a name="ip" id="ip">IP’ye dayalı sanal konaklar</a></h2>
240
241    <p>Sunucu makinenin, biri <code>example.com</code> adından çözümlenen
242      <code>172.20.30.40</code>, diğeri <code>example.org</code> adından
243      çözümlenen <code>172.20.30.50</code> diye iki IP adresi olsun.</p>
244
245    <pre class="prettyprint lang-config">Listen 80
246
247&lt;VirtualHost 172.20.30.40&gt;
248    DocumentRoot /siteler/ecom
249    ServerName example.com
250&lt;/VirtualHost&gt;
251
252&lt;VirtualHost 172.20.30.50&gt;
253    DocumentRoot /siteler/eorg
254    ServerName example.org
255&lt;/VirtualHost&gt;</pre>
256
257
258    <p><code>&lt;VirtualHost&gt;</code> yönergelerinde belirtilmeyen
259      adreslerle yapılan isteklere (örneğin, <code>localhost</code>) sunucu
260      genelindeki yapılandırma ile ana sunucu yanıt verecektir.</p>
261  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
262<div class="section">
263<h2><a name="ipport" id="ipport">Hem IP’ye hem de porta dayalı sanal konaklar</a></h2>
264    
265
266    <p>Sunucu makinenin, biri <code>example.com</code> adından çözümlenen
267      <code>172.20.30.40</code>, diğeri <code>example.org</code> adından
268      çözümlenen <code>172.20.30.50</code> diye iki IP adresi olsun ve iki
269      konak da hem 80 hem de 8080 portlarında çalışsınlar istiyoruz.</p>
270
271    <pre class="prettyprint lang-config">Listen 172.20.30.40:80
272Listen 172.20.30.40:8080
273Listen 172.20.30.50:80
274Listen 172.20.30.50:8080
275
276&lt;VirtualHost 172.20.30.40:80&gt;
277    DocumentRoot /siteler/ecom-80
278    ServerName example.com
279&lt;/VirtualHost&gt;
280
281&lt;VirtualHost 172.20.30.40:8080&gt;
282    DocumentRoot /siteler/ecom-8080
283    ServerName example.com
284&lt;/VirtualHost&gt;
285
286&lt;VirtualHost 172.20.30.50:80&gt;
287    DocumentRoot /siteler/eorg-80
288    ServerName example.org
289&lt;/VirtualHost&gt;
290
291&lt;VirtualHost 172.20.30.50:8080&gt;
292    DocumentRoot /siteler/eorg-8080
293    ServerName example.org
294&lt;/VirtualHost&gt;</pre>
295
296
297  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
298<div class="section">
299<h2><a name="mixed" id="mixed">Hem isme hem de IP‘ye dayalı sanal konaklar</a></h2>
300    
301
302    <p>Bir <code>VirtualHost</code> yönergesinde belirtilen bir IP adresi başka
303      bir sanal konakta görünmüyorsa bu sankon kesinlikle IP'ye dayalı bir
304      sanal konaktır.</p>
305
306    <pre class="prettyprint lang-config">Listen 80
307
308&lt;VirtualHost 172.20.30.40&gt;
309    DocumentRoot /siteler/ecom
310    ServerName example.com
311&lt;/VirtualHost&gt;
312
313&lt;VirtualHost 172.20.30.40&gt;
314    DocumentRoot /siteler/eorg
315    ServerName example.org
316&lt;/VirtualHost&gt;
317
318&lt;VirtualHost 172.20.30.40&gt;
319    DocumentRoot /siteler/enet
320    ServerName example.net
321&lt;/VirtualHost&gt;
322
323# IP'ye dayalı
324&lt;VirtualHost 172.20.30.50&gt;
325    DocumentRoot /siteler/eedu
326    ServerName example.edu
327&lt;/VirtualHost&gt;
328
329&lt;VirtualHost 172.20.30.60&gt;
330    DocumentRoot /siteler/egov
331    ServerName example.gov
332&lt;/VirtualHost&gt;</pre>
333
334
335  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
336<div class="section">
337<h2><a name="proxy" id="proxy"><code>Virtualhost</code> ve
338    <code>mod_proxy</code>’nin birlikte kullanımı</a></h2>
339
340    <p>Bu örnekte bir arabirimi dışarıya bakan bir makinede, başka bir
341      makinede çalışan bir sunucuya sanal konak olarak, bir vekil sunucu
342      çalıştırmak istediğimizi varsayıyoruz. <code>192.168.111.2</code> IP
343      adresli bir makinede aynı isimde bir sanal konak yapılandırılmış olsun.
344      Çok sayıda konak ismi için vekil olarak tek bir makine kullandığımızdan
345      ve konak isminin de aktarılmasını arzuladığımızdan <code class="directive"><a href="/mod/mod_proxy.html#proxypreservehost">ProxyPreserveHost
346      On</a></code> yönergesini kullandık.</p>
347
348    <pre class="prettyprint lang-config">&lt;VirtualHost *:*&gt;
349    ProxyPreserveHost On
350    ProxyPass / http://192.168.111.2/
351    ProxyPassReverse / http://192.168.111.2/
352    ServerName konak.example.com
353&lt;/VirtualHost&gt;</pre>
354
355
356    </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
357<div class="section">
358<h2><a name="default" id="default"><code>_default_</code> sanal konakları</a></h2>
359
360    <h3><a name="defaultallports" id="defaultallports">Tüm portlar için <code>_default_</code></a></h3>
361      
362
363    <p>Bir IP adresi ve port belirtilmeyen veya hiçbir sanal konağın hiçbir
364      adresi/portu ile eşleşmeyen istekleri yakalamak istersek...</p>
365
366    <pre class="prettyprint lang-config">&lt;VirtualHost _default_:*&gt;
367    DocumentRoot /siteler/default
368&lt;/VirtualHost&gt;</pre>
369
370
371    <p>Bütün portlarla eşleşen böyle bir öntanımlı sanal konağın kullanımı
372      hiçbir isteğin ana sunucuya gitmemesi sonucunu doğurur.</p>
373
374    <p>Bir öntanımlı sanal konak, asla, isme dayalı sanal konaklar için
375      kullanılmış bir adrese/porta gönderilmiş bir isteğe hizmet sunmaz. Eğer
376      istek bilinmeyen bir <code>Host:</code> başlığına sahipse veya hiç
377      <code>Host:</code> başlığı içermiyorsa isteğe daima ilk (yapılandırma
378      dosyasındaki ilk) isme dayalı sanal konak hizmet sunar.</p>
379
380    <p>Her isteği tek bir bilgilendirme sayfasına (veya betiğe) yönlendirmek
381      isterseniz <code class="directive"><a href="/mod/mod_alias.html#aliasmatch">AliasMatch</a></code> veya
382      <code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> yönergesini
383      kullanabilirsiniz.</p>
384    
385
386    <h3><a name="defaultdifferentports" id="defaultdifferentports">Farklı portlardan <code>_default_</code></a></h3>
387      
388
389    <p>Önceki yapılandırmaya ek olarak 80. portta ayrı bir
390      <code>_default_</code> sanal konağı kullanmak istersek...</p>
391
392    <pre class="prettyprint lang-config">&lt;VirtualHost _default_:80&gt;
393    DocumentRoot /siteler/default80
394    # ...
395&lt;/VirtualHost&gt;
396
397&lt;VirtualHost _default_:*&gt;
398    DocumentRoot /siteler/default
399    # ...
400&lt;/VirtualHost&gt;</pre>
401
402
403    <p>80. porttan hizmet sunan <code>_default_</code> sanal konağı IP adresi
404      belirtilmeyen tüm istekleri yakalar, bunu yapabilmesi için yapılandırma
405      dosyasında tüm portlara hizmet sunan benzerinden önce yer almalıdır. Bu
406      durumda ana sunucu hiçbir isteğe yanıt vermeyecektir.</p>
407    
408
409    <h3><a name="defaultoneport" id="defaultoneport">Tek portluk <code>_default_</code></a></h3>
410      
411
412    <p><code>_default_</code> sanal konağının sadece 80. porttan hizmet
413      sunmasını istersek...</p>
414
415    <pre class="prettyprint lang-config">&lt;VirtualHost _default_:80&gt;
416    DocumentRoot /siteler/default
417    ...
418&lt;/VirtualHost&gt;</pre>
419
420
421    <p>80. porttan gelen IP adresi belirtilmemiş isteklere
422      <code>_default_</code> sanal konağı, diğer portlardan gelen adres
423      belirtilmemiş isteklere ise ana sunucu hizmet verecektir.</p>
424
425    <p>Bir sanal konak bildiriminde <code>*</code> kullanımı
426      <code>_default_</code> kullanımından daha yüksek öncelik sağlar.</p>
427   
428
429  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
430<div class="section">
431<h2><a name="migrate" id="migrate">Bir isme dayalı sanal konağı bir IP’ye dayalı
432    sanal konakla yansılamak</a></h2>
433
434    <p>İsme dayalı sanal konak örneklerinin <a href="#twoips">2. sinde</a> adı
435      geçen <code>example.org</code> bu örnekte kendi IP adresinden hizmet
436      veriyor olsun. İsme dayalı sanal konağı eski IP adresiyle kaydetmiş
437      vekiller ve isim sunucularından kaynaklanacak olası sorunlardan kaçınmak
438      için yansılama sırasında sanal konağı hem eski hem de yeni IP adresiyle
439      sunmamız lazım.</p>
440
441    <p>Çözüm kolay, çünkü yapacağımız sadece <code>VirtualHost</code>
442      yönergesine yeni IP adresini (<code>192.168.1.2</code>) eklemek
443      olacak.</p>
444
445    <pre class="prettyprint lang-config">Listen 80
446ServerName example.com
447DocumentRoot /siteler/ecom
448
449&lt;VirtualHost 192.168.1.20 192.168.1.2&gt;
450    DocumentRoot /siteler/eorg
451    ServerName example.org
452    # ...
453&lt;/VirtualHost&gt;
454
455&lt;VirtualHost 192.168.1.20&gt;
456    DocumentRoot /siteler/enet
457    ServerName example.enet
458    ServerAlias *.example.enet
459    # ...
460&lt;/VirtualHost&gt;</pre>
461
462
463    <p>Böylece sanal konağa hem yeni (bir IP’ye dayalı sanal konak olarak)
464      hem de eski adresinden (bir isme dayalı sanal konak olarak)
465      erişilebilecektir.</p>
466
467  </div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
468<div class="section">
469<h2><a name="serverpath" id="serverpath"><code>ServerPath</code> yönergesinin kullanımı</a></h2>
470    
471
472    <p>İsme dayalı iki sanal konağı olan bir sunucumuz olsun. Doğru sanal
473      konağa erişebilmek için istemcinin doğru <code>Host:</code> başlığı
474      göndermesi gerekir. Eski HTTP/1.0 istemcileri böyle bir başlık
475      göndermedikleri için Apache istemcinin hangi sanal konağa erişmek
476      istediğini bilemez (ve isteğe ilk sanal konaktan hizmet sunar). Daha iyi
477      bir geriye uyumluluk sağlamak için isme dayalı sanal konağa bir önek
478      bağlantısı içeren bir bilgilendirme sayfası sunmak üzere yeni bir sanal
479      konak oluşturabiliriz.</p>
480
481    <pre class="prettyprint lang-config">&lt;VirtualHost 172.20.30.40&gt;
482    # ilk sanal konak
483    DocumentRoot /siteler/baska
484    RewriteEngine On
485    RewriteRule . /siteler/baska/index.html
486    # ...
487&lt;/VirtualHost&gt;
488
489&lt;VirtualHost 172.20.30.40&gt;
490DocumentRoot /siteler/baska/bir
491    ServerName bir.baska.tld
492    ServerPath /bir/
493    RewriteEngine On
494    RewriteRule ^(/bir/.*) /siteler/baska$1
495    # ...
496&lt;/VirtualHost&gt;
497
498&lt;VirtualHost 172.20.30.40&gt;
499    DocumentRoot /siteler/baska/iki
500    ServerName iki.baska.tld
501    ServerPath /iki/
502    RewriteEngine On
503    RewriteRule ^(/iki/.*) /siteler/baska$1
504    # ...
505&lt;/VirtualHost&gt;</pre>
506
507
508    <p><code class="directive"><a href="/mod/core.html#serverpath">ServerPath</a></code> yönergesinden dolayı
509      <code>http://bir.baska.tld/bir/</code> şeklinde yapılan isteklere
510      <em>daima</em> “bir” sanal konağı hizmet sunacaktır.</p>
511
512    <p><code>http://bir.baska.tld/</code> şeklinde yapılan isteklere ise
513      istemcinin doğru <code>Host:</code> başlığı göndermesi şartıyla
514      “bir” sanal konağı hizmet sunacaktır. İstemci, bir
515      <code>Host:</code> başlığı göndermediği takdirde ilk konaktan bir
516      bilgilendirme sayfası alacaktır.</p>
517
518    <p>Yalnız buradaki bir tuhaflığa dikkat edin: Eğer istemci bir
519      <code>Host:</code> başlığı göndermeden
520      <code>http://iki.baska.tld/bir/</code> şeklinde bir istek yaparsa bu
521      isteğe de “bir” sanal konağı hizmet sunacaktır.</p>
522
523    <p><code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> yönergesi, bir
524      istemcinin, bir URL öneki belirtsin ya da belirtmesin doğru
525      <code>Host:</code> başlığı gönderdiğinden emin olmak için
526      kullanılmıştır.</p>
527
528  </div></div>
529<div class="bottomlang">
530<p><span>Mevcut Diller: </span><a href="/en/vhosts/examples.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
531<a href="/fr/vhosts/examples.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
532<a href="/ja/vhosts/examples.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
533<a href="/ko/vhosts/examples.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
534<a href="/tr/vhosts/examples.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
535</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&amp;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>
536<script type="text/javascript"><!--//--><![CDATA[//><!--
537var comments_shortname = 'httpd';
538var comments_identifier = 'http://httpd.apache.org/docs/2.4/vhosts/examples.html';
539(function(w, d) {
540    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
541        d.write('<div id="comments_thread"><\/div>');
542        var s = d.createElement('script');
543        s.type = 'text/javascript';
544        s.async = true;
545        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
546        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
547    }
548    else { 
549        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
550    }
551})(window, document);
552//--><!]]></script></div><div id="footer">
553<p class="apache">Copyright 2014 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>
554<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[//><!--
555if (typeof(prettyPrint) !== 'undefined') {
556    prettyPrint();
557}
558//--><!]]></script>
559</body></html>