Moved apache code into a folder to help prepare for packaging where we dont want...
[httpd-crcsyncproxy.git] / apache / docs / manual / vhosts / examples.xml.tr
blob4c417b4225a62c075da2c2e146a086670086277e
1 <?xml version='1.0' encoding='UTF-8' ?>
2 <!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
4 <!-- English Revision: 659902 -->
5 <!-- =====================================================
6 Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
7 Reviewed by: Orhan Berent <berent belgeler.org>
8 ========================================================== -->
10 <!--
11 Licensed to the Apache Software Foundation (ASF) under one or more
12 contributor license agreements. See the NOTICE file distributed with
13 this work for additional information regarding copyright ownership.
14 The ASF licenses this file to You under the Apache License, Version 2.0
15 (the "License"); you may not use this file except in compliance with
16 the License. You may obtain a copy of the License at
18 http://www.apache.org/licenses/LICENSE-2.0
20 Unless required by applicable law or agreed to in writing, software
21 distributed under the License is distributed on an "AS IS" BASIS,
22 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23 See the License for the specific language governing permissions and
24 limitations under the License.
25 -->
27 <manualpage metafile="examples.xml.meta">
28 <parentdocument href="./">Sanal Konaklar</parentdocument>
29 <title>Sanal Konak Örnekleri</title>
31 <summary>
33 <p>Bu belgede sanal konaklarla ile ilgili olarak karşılaşılması olası tüm
34 senaryolara yer verilmeye çalışılmıştır. Buradaki senaryolar, tek bir
35 sunucu üzerinde <a href="name-based.html">isme dayalı</a> veya <a
36 href="ip-based.html">IP’ye dayalı</a> sanal konaklar aracılığıyla çok
37 sayıda sitenin sunumu ile ilgilidir.
38 </p>
40 </summary>
42 <section id="purename">
43 <title>Tek bir IP ile çok sayıda isme dayalı site</title>
45 <p>Bu örnekte, makinenizin tek bir IP adresine sahip olduğunu ve bu
46 makineye <code>mesela.dom</code> ve <code>faraza.dom</code> şeklinde
47 (DNS A kayıtları sayesinde) farklı isimlerle erişilebildiğini
48 varsayalım.</p>
50 <note><title>Bilginize</title><p>Apache sunucusu üzerinde sanal konakları
51 yapılandırmakla bu konak isimleri için sihirli bir şekilde DNS
52 kayıtlarının da oluşturulmasını sağlamış olmazsınız. Bu isimler için
53 ilgili DNS kayıtlarında sizin IP adresinize çözümlenen A kayıtlarının
54 olması gerekir, yoksa sitenize kimse erişemez. Sitelere erişimi yerel
55 olarak denemek isterseniz, bu girdileri <code>hosts</code> dosyanıza
56 yazabilirsiniz. Fakat bu sadece sizin makinenizde çalışır. Yerel
57 ağınızdaki her makinenin <code>hosts</code> dosyasına bu girdileri
58 yazarak yerel ağdan erişimi bu yolla sağlayabilirsiniz ama dış ağdan
59 gelecek ziyaretçileriniz için DNS kayıtlarınızın olması şarttır.</p>
60 </note>
62 <example><title>Sunucu yapılandırması</title>
64 # Apache’nin 80. portu dinlediğinden emin olalım<br />
65 Listen 80<br />
66 <br />
67 # Sanal konak istekleri için bütün IP adresleri dinlensin.<br />
68 NameVirtualHost *:80<br />
69 <br />
70 &lt;VirtualHost *:80&gt;<br />
71 <indent>
72 DocumentRoot /siteler/mesela<br />
73 ServerName mesela.dom<br />
74 <br />
75 # Diğer yönergeler, burada ...<br />
76 <br />
77 </indent>
78 &lt;/VirtualHost&gt;<br />
79 <br />
80 &lt;VirtualHost *:80&gt;<br />
81 <indent>
82 DocumentRoot /siteler/faraza<br />
83 ServerName faraza.dom<br />
84 <br />
85 # Diğer yönergeler, burada ...<br />
86 <br />
87 </indent>
88 &lt;/VirtualHost&gt;
89 </example>
91 <p>Yıldız imleri tüm adreslerle eşleşmeyi sağladığından ana sunucu
92 (yapılandırma dosyası genelindeki yapılandırma - sunucu geneli)
93 erişilebilir olmayacaktır. <code>mesela.dom</code> yapılandırma
94 dosyasındaki ilk sanal konak olduğundan en yüksek önceliğe sahiptir ve
95 <cite>öntanımlı</cite> veya <cite>baskın</cite> site olarak davranır.
96 Yani, hiçbir <code>ServerName</code> yönergesi ile eşleşmeyen bir istek
97 alındığında bu istek ilk <code>VirtualHost</code> yapılandırması ile
98 karşılanır.</p>
100 <note><title>Bilginize</title>
101 <p>İsterseniz, <code>*</code> yerine kendi IP adresinizi yazabilirsiniz.
102 Ancak bu durumda bunu hem <code>VirtualHost</code> hem de
103 <code>NameVirtualHost</code> için yapmalısınız:</p>
105 <example>
106 NameVirtualHost 192.168.1.22<br />
107 <br />
108 &lt;VirtualHost 192.168.1.22&gt;<br />
109 # vs. ...
110 </example>
112 <p>Bununla birlikte, IP adresinin önceden kestirilebilir olmadığı
113 sistemlerde, örneğin, hizmet sağlayıcınıza çevirmeli ağ ile bağlanıyor
114 ve onun rasgele atadığı bir IP adresi için bir devingen DNS çözümü
115 kullanıyorsanız, IP adresi değil de <code>*</code> kullanmak daha çok
116 işinize yarayacaktır. Yıldız imi her IP adresi ile eşleşeceğinden IP
117 adresiniz değişse bile bu yapılandırmayı değiştirmeden
118 kullanabilirsiniz.</p>
119 </note>
121 <p>Yukarıdaki yapılandırmayı hemen hemen tüm isme dayalı sanal konaklar
122 için kullanabilirsiniz. Bu yapılandırmanın çalışmayacağı tek durum,
123 farklı içerikleri farklı IP adreslerinden sunma gereğiyle
124 karşılaşmaktır.</p>
126 </section>
128 <section id="twoips">
129 <title>IP adresleri farklı çok sayıda isme dayalı site</title>
131 <note><title>Bilginize</title>
132 <p>Burada açıklanan teknikler istendiği kadar çok IP adresine
133 genişletilebilir.</p>
134 </note>
136 <p>Sunucunun iki IP adresi olsun. Birinden "ana sunucu"
137 (<code>192.168.1.2</code>) diğerinden <code>mesela.dom</code>
138 <code>192.168.2.2</code> hizmet versin. Bu arada başka sanal konakları
139 da sunabilelim istiyoruz.</p>
141 <example><title>Sunucu yapılandırması</title>
143 Listen 80<br />
144 <br />
145 # Bu, 192.168.1.2 adresindeki "ana sunucu" olsun<br />
146 ServerName sunucu.faraza.dom<br />
147 DocumentRoot /siteler/anasunucu<br />
148 <br />
149 # Burası da diğer adres için<br />
150 NameVirtualHost 192.168.2.2<br />
151 <br />
152 &lt;VirtualHost 192.168.2.2&gt;<br />
153 <indent>
154 DocumentRoot /siteler/mesela<br />
155 ServerName mesela.dom<br />
156 <br />
157 # Diğer yönergeler, burada ...<br />
158 <br />
159 </indent>
160 &lt;/VirtualHost&gt;<br />
161 <br />
162 &lt;VirtualHost 192.168.2.2&gt;<br />
163 <indent>
164 DocumentRoot /siteler/falanca<br />
165 ServerName falanca.dom<br />
166 <br />
167 # Diğer yönergeler, burada ...<br />
168 <br />
169 </indent>
170 &lt;/VirtualHost&gt;
171 </example>
173 <p><code>192.168.2.2</code> adresinden gelmeyen tüm isteklere ana sunucu
174 (<code>sunucu.faraza.dom</code>), <code>192.168.2.2</code> adresinden
175 gelen sunucu ismi belirtmeyenler ile <code>Host:</code> başlığı
176 belirtmeyenlere ise <code>mesela.dom</code> hizmet verecektir.</p>
178 </section>
180 <section id="intraextra"><title>Aynı içeriği farklı IP adresleriyle sunmak
181 (örn., dahili ve harici ağlara)</title>
183 <p>Sunucu makine iki IP adresine sahip olsun. Biri iç ağa
184 (<code>192.168.1.1</code>) diğeri dış ağa (<code>172.20.30.40</code>)
185 bakıyor olsun. <code>sunucu.mesela.dom</code> ismi dış ağda dış ağa
186 bakan IP’ye, iç ağda ise iç ağa bakan IP’ye çözümleniyor olsun.</p>
188 <p>Bu durumda, sunucu hem iç hem de dış ağdan gelen isteklere aynı içerik,
189 dolayısıyla aynı <code>VirtualHost</code> bölümü ile hizmet
190 verebilir.</p>
192 <example><title>Sunucu yapılandırması</title>
194 NameVirtualHost 192.168.1.1<br />
195 NameVirtualHost 172.20.30.40<br />
196 <br />
197 &lt;VirtualHost 192.168.1.1 172.20.30.40&gt;<br />
198 <indent>
199 DocumentRoot /siteler/sunucu<br />
200 ServerName sunucu.mesela.dom<br />
201 ServerAlias sunucu<br />
202 </indent>
203 &lt;/VirtualHost&gt;
204 </example>
206 <p>Artık, hem iç hem de dış ağdan gelen isteklere aynı
207 <code>VirtualHost</code> bölümünden hizmet sunulacaktır.</p>
209 <note><title>Bilginize:</title>
210 <p>İç ağdan istek yapan biri, tam nitelenmiş konak ismi
211 <code>sunucu.mesela.dom</code> yerine makine ismini
212 (<code>sunucu</code>) kullanabilir (<code>ServerAlias sunucu</code>
213 satırına dikkat).</p>
215 <p>Ayrıca, yukarıdaki gibi iki ayrı IP adresi belirtmek yerine sadece
216 <code>*</code> belirtmekle sunucunun tüm IP adreslerine yine aynı
217 içerikle yanıt vereceğine dikkat ediniz.</p>
218 </note>
220 </section>
222 <section id="port"><title>Farklı portlarla farklı siteler</title>
224 <p>Aynı IP adresine sahip çok sayıda konak ismine sahip olduğunuzu ve
225 bunların bazılarının farklı portları kullanmasını istediğinizi
226 varsayalım. <directive module="core">NameVirtualHost</directive>
227 yönergesi ile port tanımlamak suretiyle bunu mümkün kılabilirsiniz.
228 <code>NameVirtualHost&nbsp;<em>isim:port</em></code> tanımı yapmadan
229 veya bunun yerine <directive module="mpm_common">Listen</directive>
230 kullanarak <code>VirtualHost&nbsp;<em>isim:port</em></code> kullanmaya
231 kalkışırsanız, yapılandırmanız çalışmayacaktır.</p>
233 <example><title>Sunucu yapılandırması</title>
235 Listen 80<br />
236 Listen 8080<br />
237 <br />
238 NameVirtualHost 172.20.30.40:80<br />
239 NameVirtualHost 172.20.30.40:8080<br />
240 <br />
241 &lt;VirtualHost 172.20.30.40:80&gt;<br />
242 <indent>
243 ServerName mesela.dom<br />
244 DocumentRoot /siteler/mesela-80<br />
245 </indent>
246 &lt;/VirtualHost&gt;<br />
247 <br />
248 &lt;VirtualHost 172.20.30.40:8080&gt;<br />
249 <indent>
250 ServerName mesela.dom<br />
251 DocumentRoot /siteler/mesela-8080<br />
252 </indent>
253 &lt;/VirtualHost&gt;<br />
254 <br />
255 &lt;VirtualHost 172.20.30.40:80&gt;<br />
256 <indent>
257 ServerName faraza.dom<br />
258 DocumentRoot /siteler/faraza-80<br />
259 </indent>
260 &lt;/VirtualHost&gt;<br />
261 <br />
262 &lt;VirtualHost 172.20.30.40:8080&gt;<br />
263 <indent>
264 ServerName faraza.dom<br />
265 DocumentRoot /siteler/faraza-8080<br />
266 </indent>
267 &lt;/VirtualHost&gt;
268 </example>
270 </section>
272 <section id="ip"><title>IP’ye dayalı sanal konaklar</title>
274 <p>Sunucu makinenin, biri <code>mesela.dom</code> adından çözümlenen
275 <code>172.20.30.40</code>, diğeri <code>faraza.dom</code> adından
276 çözümlenen <code>172.20.30.50</code> diye iki IP adresi olsun.</p>
278 <example><title>Sunucu yapılandırması</title>
280 Listen 80<br />
281 <br />
282 &lt;VirtualHost 172.20.30.40&gt;<br />
283 <indent>
284 DocumentRoot /siteler/mesela<br />
285 ServerName mesela.dom<br />
286 </indent>
287 &lt;/VirtualHost&gt;<br />
288 <br />
289 &lt;VirtualHost 172.20.30.50&gt;<br />
290 <indent>
291 DocumentRoot /siteler/faraza<br />
292 ServerName faraza.dom<br />
293 </indent>
294 &lt;/VirtualHost&gt;
295 </example>
297 <p><code>&lt;VirtualHost&gt;</code> yönergelerinde belirtilmeyen
298 adreslerle yapılan isteklere (örneğin, <code>localhost</code>) sunucu
299 genelindeki yapılandırma ile ana sunucu yanıt verecektir.</p>
300 </section>
302 <section id="ipport">
303 <title>Hem IP’ye hem de porta dayalı sanal konaklar</title>
305 <p>Sunucu makinenin, biri <code>mesela.dom</code> adından çözümlenen
306 <code>172.20.30.40</code>, diğeri <code>faraza.dom</code> adından
307 çözümlenen <code>172.20.30.50</code> diye iki IP adresi olsun ve iki
308 konak da hem 80 hem de 8080 portlarında çalışsınlar istiyoruz.</p>
310 <example><title>Sunucu yapılandırması</title>
312 Listen 172.20.30.40:80<br />
313 Listen 172.20.30.40:8080<br />
314 Listen 172.20.30.50:80<br />
315 Listen 172.20.30.50:8080<br />
316 <br />
317 &lt;VirtualHost 172.20.30.40:80&gt;<br />
318 <indent>
319 DocumentRoot /siteler/mesela-80<br />
320 ServerName mesela.dom<br />
321 </indent>
322 &lt;/VirtualHost&gt;<br />
323 <br />
324 &lt;VirtualHost 172.20.30.40:8080&gt;<br />
325 <indent>
326 DocumentRoot /siteler/mesela-8080<br />
327 ServerName mesela.dom<br />
328 </indent>
329 &lt;/VirtualHost&gt;<br />
330 <br />
331 &lt;VirtualHost 172.20.30.50:80&gt;<br />
332 <indent>
333 DocumentRoot /siteler/faraza-80<br />
334 ServerName faraza.dom<br />
335 </indent>
336 &lt;/VirtualHost&gt;<br />
337 <br />
338 &lt;VirtualHost 172.20.30.50:8080&gt;<br />
339 <indent>
340 DocumentRoot /siteler/faraza-8080<br />
341 ServerName faraza.dom<br />
342 </indent>
343 &lt;/VirtualHost&gt;
344 </example>
346 </section>
348 <section id="mixed">
349 <title>Hem isme hem de IP‘ye dayalı sanal konaklar</title>
351 <p>Bazı adreslerde isme dayalı, bazılarında da IP’ye dayalı sanal konaklar
352 çalışsın istersek...</p>
354 <example><title>Sunucu yapılandırması</title>
356 Listen 80<br />
357 <br />
358 NameVirtualHost 172.20.30.40<br />
359 <br />
360 &lt;VirtualHost 172.20.30.40&gt;<br />
361 <indent>
362 DocumentRoot /siteler/mesela<br />
363 ServerName mesela.dom<br />
364 </indent>
365 &lt;/VirtualHost&gt;<br />
366 <br />
367 &lt;VirtualHost 172.20.30.40&gt;<br />
368 <indent>
369 DocumentRoot /siteler/faraza<br />
370 ServerName faraza.dom<br />
371 </indent>
372 &lt;/VirtualHost&gt;<br />
373 <br />
374 &lt;VirtualHost 172.20.30.40&gt;<br />
375 <indent>
376 DocumentRoot /siteler/falanca<br />
377 ServerName falanca.dom<br />
378 </indent>
379 &lt;/VirtualHost&gt;<br />
380 <br />
381 # IP-based<br />
382 &lt;VirtualHost 172.20.30.50&gt;<br />
383 <indent>
384 DocumentRoot /siteler/filanca<br />
385 ServerName filanca.dom<br />
386 </indent>
387 &lt;/VirtualHost&gt;<br />
388 <br />
389 &lt;VirtualHost 172.20.30.60&gt;<br />
390 <indent>
391 DocumentRoot /siteler/fesmekan<br />
392 ServerName fesmekan.dom<br />
393 </indent>
394 &lt;/VirtualHost&gt;
395 </example>
397 </section>
399 <section id="proxy"><title><code>Virtualhost</code> ve
400 <code>mod_proxy</code>’nin birlikte kullanımı</title>
402 <p>Bu örnekte bir arabirimi dışarıya bakan bir makinede, başka bir
403 makinede çalışan bir sunucuya sanal konak olarak, bir vekil sunucu
404 çalıştırmak istediğimizi varsayıyoruz. <code>192.168.111.2</code> IP
405 adresli bir makinede aynı isimde bir sanal konak yapılandırılmış olsun.
406 Çok sayıda konak ismi için vekil olarak tek bir makine kullandığımızdan
407 ve konak isminin de aktarılmasını arzuladığımızdan <directive
408 module="mod_proxy">ProxyPreserveHost On</directive> yönergesini
409 kullandık.</p>
411 <example>
412 &lt;VirtualHost *:*&gt;<br />
413 <indent>
414 ProxyPreserveHost On<br />
415 ProxyPass / http://192.168.111.2/<br />
416 ProxyPassReverse / http://192.168.111.2/<br />
417 ServerName konak.mesela.dom<br />
418 </indent>
419 &lt;/VirtualHost&gt;
420 </example>
422 </section>
424 <section id="default"><title><code>_default_</code> sanal konakları</title>
426 <section id="defaultallports">
427 <title>Tüm portlar için <code>_default_</code></title>
429 <p>Bir IP adresi ve port belirtilmeyen veya hiçbir sanal konağın hiçbir
430 adresi/portu ile eşleşmeyen istekleri yakalamak istersek...</p>
432 <example>
433 <title>Sunucu yapılandırması</title>
435 &lt;VirtualHost _default_:*&gt;<br />
436 <indent>
437 DocumentRoot /siteler/default<br />
438 </indent>
439 &lt;/VirtualHost&gt;
440 </example>
442 <p>Bütün portlarla eşleşen böyle bir öntanımlı sanal konağın kullanımı
443 hiçbir isteğin ana sunucuya gitmemesi sonucunu doğurur.</p>
445 <p>Bir öntanımlı sanal konak, asla, isme dayalı sanal konaklar için
446 kullanılmış bir adrese/porta gönderilmiş bir isteğe hizmet sunmaz. Eğer
447 istek bilinmeyen bir <code>Host:</code> başlığına sahipse veya hiç
448 <code>Host:</code> başlığı içermiyorsa isteğe daima ilk (yapılandırma
449 dosyasındaki ilk) isme dayalı sanal konak hizmet sunar.</p>
451 <p>Her isteği tek bir bilgilendirme sayfasına (veya betiğe) yönlendirmek
452 isterseniz <directive module="mod_alias">AliasMatch</directive> veya
453 <directive module="mod_rewrite">RewriteRule</directive> yönergesini
454 kullanabilirsiniz.</p>
455 </section>
457 <section id="defaultdifferentports">
458 <title>Farklı portlardan <code>_default_</code></title>
460 <p>Önceki yapılandırmaya ek olarak 80. portta ayrı bir
461 <code>_default_</code> sanal konağı kullanmak istersek...</p>
463 <example>
464 <title>Sunucu yapılandırması</title>
466 &lt;VirtualHost _default_:80&gt;<br />
467 <indent>
468 DocumentRoot /siteler/default80<br />
469 # ...<br />
470 </indent>
471 &lt;/VirtualHost&gt;<br />
472 <br />
473 &lt;VirtualHost _default_:*&gt;<br />
474 <indent>
475 DocumentRoot /siteler/default<br />
476 # ...<br />
477 </indent>
478 &lt;/VirtualHost&gt;
479 </example>
481 <p>80. porttan hizmet sunan <code>_default_</code> sanal konağı IP adresi
482 belirtilmeyen tüm istekleri yakalar, bunu yapabilmesi için yapılandırma
483 dosyasında tüm portlara hizmet sunan benzerinden önce yer almalıdır. Bu
484 durumda ana sunucu hiçbir isteğe yanıt vermeyecektir.</p>
485 </section>
487 <section id="defaultoneport">
488 <title>Tek portluk <code>_default_</code></title>
490 <p><code>_default_</code> sanal konağının sadece 80. porttan hizmet
491 sunmasını istersek...</p>
493 <example>
494 <title>Sunucu yapılandırması</title>
496 &lt;VirtualHost _default_:80&gt;<br />
497 DocumentRoot /siteler/default<br />
498 ...<br />
499 &lt;/VirtualHost&gt;
500 </example>
502 <p>80. porttan gelen IP adresi belirtilmemiş isteklere
503 <code>_default_</code> sanal konağı, diğer portlardan gelen adres
504 belirtilmemiş isteklere ise ana sunucu hizmet verecektir.</p>
505 </section>
507 </section>
509 <section id="migrate"><title>Bir isme dayalı sanal konağı bir IP’ye dayalı
510 sanal konakla yansılamak</title>
512 <p>İsme dayalı sanal konak örneklerinin <a href="#twoips">2. sinde</a> adı
513 geçen <code>falanca.dom</code> bu örnekte kendi IP adresinden hizmet
514 veriyor olsun. İsme dayalı sanal konağı eski IP adresiyle kaydetmiş
515 vekiller ve isim sunucularından kaynaklanacak olası sorunlardan kaçınmak
516 için yansılama sırasında sanal konağı hem eski hem de yeni IP adresiyle
517 sunmamız lazım.</p>
519 <p>Çözüm kolay, çünkü yapacağımız sadece <code>VirtualHost</code>
520 yönergesine yeni IP adresini (<code>192.168.2.2</code>) eklemek olacak.</p>
522 <example>
523 <title>Sunucu yapılandırması</title>
525 Listen 80<br />
526 ServerName mesela.dom<br />
527 DocumentRoot /siteler/mesela<br />
528 <br />
529 &lt;VirtualHost 192.168.1.2&gt;<br />
530 <br />
531 &lt;VirtualHost 192.168.1.2 192.168.2.2&gt;<br />
532 <indent>
533 DocumentRoot /siteler/falanca<br />
534 ServerName falanca.dom<br />
535 # ...<br />
536 </indent>
537 &lt;/VirtualHost&gt;<br />
538 <br />
539 &lt;VirtualHost 192.168.1.2&gt;<br />
540 <indent>
541 DocumentRoot /siteler/faraza<br />
542 ServerName faraza.dom<br />
543 ServerAlias *.faraza.dom<br />
544 # ...<br />
545 </indent>
546 &lt;/VirtualHost&gt;
547 </example>
549 <p>Böylece sanal konağa hem yeni (bir IP’ye dayalı sanal konak olarak)
550 hem de eski adresinden (bir isme dayalı sanal konak olarak)
551 erişilebilecektir.</p>
553 </section>
555 <section id="serverpath">
556 <title><code>ServerPath</code> yönergesinin kullanımı</title>
558 <p>İsme dayalı iki sanal konağı olan bir sunucumuz olsun. Doğru sanal
559 konağa erişebilmek için istemcinin doğru <code>Host:</code> başlığı
560 göndermesi gerekir. Eski HTTP/1.0 istemcileri böyle bir başlık
561 göndermedikleri için Apache istemcinin hangi sanal konağa erişmek
562 istediğini bilemez (ve isteğe ilk sanal konaktan hizmet sunar). Daha iyi
563 bir geriye uyumluluk sağlamak için isme dayalı sanal konağa bir önek
564 bağlantısı içeren bir bilgilendirme sayfası sunmak üzere yeni bir sanal
565 konak oluşturabiliriz.</p>
567 <example>
568 <title>Sunucu yapılandırması</title>
570 NameVirtualHost 172.20.30.40<br />
571 <br />
572 &lt;VirtualHost 172.20.30.40&gt;<br />
573 <indent>
574 # ilk sanal konak<br />
575 DocumentRoot /siteler/baska<br />
576 RewriteEngine On<br />
577 RewriteRule ^/.* /siteler/baska/index.html<br />
578 # ...<br />
579 </indent>
580 &lt;/VirtualHost&gt;<br />
581 <br />
582 &lt;VirtualHost 172.20.30.40&gt;<br />
583 DocumentRoot /siteler/baska/bir<br />
584 <indent>
585 ServerName bir.baska.tld<br />
586 ServerPath /bir/<br />
587 RewriteEngine On<br />
588 RewriteRule ^(/bir/.*) /siteler/baska$1<br />
589 # ...<br />
590 </indent>
591 &lt;/VirtualHost&gt;<br />
592 <br />
593 &lt;VirtualHost 172.20.30.40&gt;<br />
594 <indent>
595 DocumentRoot /siteler/baska/iki<br />
596 ServerName iki.baska.tld<br />
597 ServerPath /iki/<br />
598 RewriteEngine On<br />
599 RewriteRule ^(/iki/.*) /siteler/baska$1<br />
600 # ...<br />
601 </indent>
602 &lt;/VirtualHost&gt;
603 </example>
605 <p><directive module="core">ServerPath</directive> yönergesinden dolayı
606 <code>http://bir.baska.tld/bir/</code> şeklinde yapılan isteklere
607 <em>daima</em> “bir” sanal konağı hizmet sunacaktır.</p>
609 <p><code>http://bir.baska.tld/</code> şeklinde yapılan isteklere ise
610 istemcinin doğru <code>Host:</code> başlığı göndermesi şartıyla
611 “bir” sanal konağı hizmet sunacaktır. İstemci, bir
612 <code>Host:</code> başlığı göndermediği takdirde ilk konaktan bir
613 bilgilendirme sayfası alacaktır.</p>
615 <p>Yalnız buradaki bir tuhaflığa dikkat edin: Eğer istemci bir
616 <code>Host:</code> başlığı göndermeden
617 <code>http://iki.baska.tld/bir/</code> şeklinde bir istek yaparsa bu
618 isteğe de “bir” sanal konağı hizmet sunacaktır.</p>
620 <p><directive module="mod_rewrite">RewriteRule</directive> yönergesi, bir
621 istemcinin, bir URL öneki belirtsin ya da belirtmesin doğru
622 <code>Host:</code> başlığı gönderdiğinden emin olmak için
623 kullanılmıştır.</p>
625 </section>
627 </manualpage>