<a href="../ko/vhosts/examples.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/vhosts/examples.html" title="Türkçe"> tr </a></p>
</div>
-<div class="outofdate">Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.</div>
<p>Bu belgede <a href="index.html">sanal konaklarla</a> ile ilgili olarak
<p>Bu örnekte, makinenizin tek bir IP adresine sahip olduğunu ve bu
- makineye <code>mesela.dom</code> ve <code>faraza.dom</code> şeklinde
+ makineye <code>example.com</code> ve <code>example.org</code> şeklinde
(DNS A kayıtları sayesinde) farklı isimlerle erişilebildiğini
varsayalım.</p>
gelecek ziyaretçileriniz için DNS kayıtlarınızın olması şarttır.</p>
</div>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
- # Apache’nin 80. portu dinlediğinden emin olalım<br />
- Listen 80<br />
- <br />
- <VirtualHost *:80><br />
- <span class="indent">
- DocumentRoot /siteler/mesela<br />
- ServerName mesela.dom<br />
- <br />
- # Diğer yönergeler, burada ...<br />
- <br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost *:80><br />
- <span class="indent">
- DocumentRoot /siteler/faraza<br />
- ServerName faraza.dom<br />
- <br />
- # Diğer yönergeler, burada ...<br />
- <br />
- </span>
- </VirtualHost>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+# Apache’nin 80. portu dinlediğinden emin olalım
+Listen 80
+<VirtualHost *:80>
+ DocumentRoot /siteler/ecom
+ ServerName example.com
+
+ # Diğer yönergeler, burada ...
+</VirtualHost>
+
+<VirtualHost *:80>
+ DocumentRoot /siteler/eorg
+ ServerName example.org
+
+ # Diğer yönergeler, burada ...
+</VirtualHost>
+ </pre>
+
<p>Yıldız imleri tüm adreslerle eşleşmeyi sağladığından ana sunucu
(yapılandırma dosyası genelindeki yapılandırma - sunucu geneli)
erişilebilir olmayacaktır. Yapılandırma
- dosyasındaki <code>ServerName mesela.dom</code> yönergeli konak, ilk
+ dosyasındaki <code>ServerName example.com</code> yönergeli konak, ilk
sanal konak olduğundan en yüksek önceliğe sahiptir ve
<cite>öntanımlı</cite> veya <cite>baskın</cite> site olarak davranır.
Yani, hiçbir <code>ServerName</code> yönergesi ile eşleşmeyen bir istek
<p>IP adresi ve porta dayalı ayrımı umursamıyorsanız, <code>*</code>
yerine kendi IP adresinizi yazabilirsiniz.</p>
- <div class="example"><p><code>
- NameVirtualHost 192.168.1.22<br />
- <br />
- <VirtualHost 192.168.1.22><br />
- # vs. ...
- </code></p></div>
+ <pre class="prettyprint lang-config">
+NameVirtualHost 192.168.1.22
+
+<VirtualHost 192.168.1.22>
+ # vs. ...
+</VirtualHost>
+ </pre>
+
<p>Bununla birlikte, IP adresinin önceden kestirilebilir olmadığı
sistemlerde, örneğin, hizmet sağlayıcınıza çevirmeli ağ ile bağlanıyor
</div>
<p>Sunucunun iki IP adresi olsun. Birinden "ana sunucu"
- (<code>192.168.1.2</code>) diğerinden <code>mesela.dom</code>
+ (<code>192.168.1.2</code>) diğerinden <code>example.com</code>
<code>192.168.2.2</code> hizmet versin. Bu arada başka sanal konakları
da sunabilelim istiyoruz.</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
- Listen 80<br />
- <br />
- # Bu, 192.168.1.2 adresindeki "ana sunucu" olsun<br />
- ServerName sunucu.faraza.dom<br />
- DocumentRoot /siteler/anasunucu<br />
- <br />
- <VirtualHost 192.168.2.2><br />
- <span class="indent">
- DocumentRoot /siteler/mesela<br />
- ServerName mesela.dom<br />
- <br />
- # Diğer yönergeler, burada ...<br />
- <br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 192.168.2.2><br />
- <span class="indent">
- DocumentRoot /siteler/falanca<br />
- ServerName falanca.dom<br />
- <br />
- # Diğer yönergeler, burada ...<br />
- <br />
- </span>
- </VirtualHost>
- </code></p></div>
-
- <p><code>192.168.2.2</code> adresinden gelmeyen tüm isteklere ana sunucu
- (<code>sunucu.faraza.dom</code>), <code>192.168.2.2</code> adresinden
+ <pre class="prettyprint lang-config">
+Listen 80
+
+# Bu, 192.168.1.2 adresindeki "ana sunucu" olsun
+ServerName sunucu.example.com
+DocumentRoot /siteler/anasunucu
+
+<VirtualHost 192.168.1.20>
+ DocumentRoot /siteler/ecom
+ ServerName example.com
+
+ # Diğer yönergeler, burada ...
+</VirtualHost>
+
+<VirtualHost 192.168.1.20>
+ DocumentRoot /siteler/eorg
+ ServerName example.org
+
+ # Diğer yönergeler, burada ...
+</VirtualHost>
+ </pre>
+
+
+ <p><code>192.168.1.20</code> adresinden gelmeyen tüm isteklere ana sunucu
+ (<code>sunucu.example.com</code>), <code>192.168.1.20</code> adresinden
gelen sunucu ismi belirtmeyenler ile <code>Host:</code> başlığı
- belirtmeyenlere ise <code>mesela.dom</code> hizmet verecektir.</p>
+ belirtmeyenlere ise <code>example.com</code> hizmet verecektir.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<p>Sunucu makine iki IP adresine sahip olsun. Biri iç ağa
(<code>192.168.1.1</code>) diğeri dış ağa (<code>172.20.30.40</code>)
- bakıyor olsun. <code>sunucu.mesela.dom</code> ismi dış ağda dış ağa
+ bakıyor olsun. <code>sunucu.example.com</code> ismi dış ağda dış ağa
bakan IP’ye, iç ağda ise iç ağa bakan IP’ye çözümleniyor olsun.</p>
<p>Bu durumda, sunucu hem iç hem de dış ağdan gelen isteklere aynı içerik,
dolayısıyla aynı <code>VirtualHost</code> bölümü ile hizmet
verebilir.</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
- <br />
- <VirtualHost 192.168.1.1 172.20.30.40><br />
- <span class="indent">
- DocumentRoot /siteler/sunucu<br />
- ServerName sunucu.mesela.dom<br />
- ServerAlias sunucu<br />
- </span>
- </VirtualHost>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<VirtualHost 192.168.1.1 172.20.30.40>
+ DocumentRoot /siteler/sunucu
+ ServerName sunucu.example.com
+ ServerAlias sunucu
+</VirtualHost>
+ </pre>
+
<p>Artık, hem iç hem de dış ağdan gelen isteklere aynı
<code>VirtualHost</code> bölümünden hizmet sunulacaktır.</p>
<div class="note"><h3>Bilginize:</h3>
<p>İç ağdan istek yapan biri, tam nitelenmiş konak ismi
- <code>sunucu.mesela.dom</code> yerine makine ismini
+ <code>sunucu.example.com</code> yerine makine ismini
(<code>sunucu</code>) kullanabilir (<code>ServerAlias sunucu</code>
satırına dikkat).</p>
varsayalım. Aşağıdaki örnekte, isim eşleşmesinin, en iyi eşleşen IP
adresi ve port çifti saptandıktan sonra yer alması gösterilmiştir. </p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
- Listen 80<br />
- Listen 8080<br />
- <br />
- <VirtualHost 172.20.30.40:80><br />
- <span class="indent">
- ServerName mesela.dom<br />
- DocumentRoot /siteler/mesela-80<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40:8080><br />
- <span class="indent">
- ServerName mesela.dom<br />
- DocumentRoot /siteler/mesela-8080<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40:80><br />
- <span class="indent">
- ServerName faraza.dom<br />
- DocumentRoot /siteler/faraza-80<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40:8080><br />
- <span class="indent">
- ServerName faraza.dom<br />
- DocumentRoot /siteler/faraza-8080<br />
- </span>
- </VirtualHost>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+Listen 80
+Listen 8080
+
+<VirtualHost 172.20.30.40:80>
+ ServerName example.com
+ DocumentRoot /siteler/ecom-80
+</VirtualHost>
+
+<VirtualHost 172.20.30.40:8080>
+ ServerName example.com
+ DocumentRoot /siteler/ecom-8080
+</VirtualHost>
+
+<VirtualHost 172.20.30.40:80>
+ ServerName example.org
+ DocumentRoot /siteler/eorg-80
+</VirtualHost>
+
+<VirtualHost 172.20.30.40:8080>
+ ServerName example.org
+ DocumentRoot /siteler/eorg-8080
+</VirtualHost>
+ </pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="ip" id="ip">IP’ye dayalı sanal konaklar</a></h2>
- <p>Sunucu makinenin, biri <code>mesela.dom</code> adından çözümlenen
- <code>172.20.30.40</code>, diğeri <code>faraza.dom</code> adından
+ <p>Sunucu makinenin, biri <code>example.com</code> adından çözümlenen
+ <code>172.20.30.40</code>, diğeri <code>example.org</code> adından
çözümlenen <code>172.20.30.50</code> diye iki IP adresi olsun.</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
- Listen 80<br />
- <br />
- <VirtualHost 172.20.30.40><br />
- <span class="indent">
- DocumentRoot /siteler/mesela<br />
- ServerName mesela.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.50><br />
- <span class="indent">
- DocumentRoot /siteler/faraza<br />
- ServerName faraza.dom<br />
- </span>
- </VirtualHost>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+Listen 80
+
+<VirtualHost 172.20.30.40>
+ DocumentRoot /siteler/ecom
+ ServerName example.com
+</VirtualHost>
+
+<VirtualHost 172.20.30.50>
+ DocumentRoot /siteler/eorg
+ ServerName example.org
+</VirtualHost>
+ </pre>
+
<p><code><VirtualHost></code> yönergelerinde belirtilmeyen
adreslerle yapılan isteklere (örneğin, <code>localhost</code>) sunucu
<h2><a name="ipport" id="ipport">Hem IP’ye hem de porta dayalı sanal konaklar</a></h2>
- <p>Sunucu makinenin, biri <code>mesela.dom</code> adından çözümlenen
- <code>172.20.30.40</code>, diğeri <code>faraza.dom</code> adından
+ <p>Sunucu makinenin, biri <code>example.com</code> adından çözümlenen
+ <code>172.20.30.40</code>, diğeri <code>example.org</code> adından
çözümlenen <code>172.20.30.50</code> diye iki IP adresi olsun ve iki
konak da hem 80 hem de 8080 portlarında çalışsınlar istiyoruz.</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
- Listen 172.20.30.40:80<br />
- Listen 172.20.30.40:8080<br />
- Listen 172.20.30.50:80<br />
- Listen 172.20.30.50:8080<br />
- <br />
- <VirtualHost 172.20.30.40:80><br />
- <span class="indent">
- DocumentRoot /siteler/mesela-80<br />
- ServerName mesela.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40:8080><br />
- <span class="indent">
- DocumentRoot /siteler/mesela-8080<br />
- ServerName mesela.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.50:80><br />
- <span class="indent">
- DocumentRoot /siteler/faraza-80<br />
- ServerName faraza.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.50:8080><br />
- <span class="indent">
- DocumentRoot /siteler/faraza-8080<br />
- ServerName faraza.dom<br />
- </span>
- </VirtualHost>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+Listen 172.20.30.40:80
+Listen 172.20.30.40:8080
+Listen 172.20.30.50:80
+Listen 172.20.30.50:8080
+
+<VirtualHost 172.20.30.40:80>
+ DocumentRoot /siteler/ecom-80
+ ServerName example.com
+</VirtualHost>
+
+<VirtualHost 172.20.30.40:8080>
+ DocumentRoot /siteler/ecom-8080
+ ServerName example.com
+</VirtualHost>
+
+<VirtualHost 172.20.30.50:80>
+ DocumentRoot /siteler/eorg-80
+ ServerName example.org
+</VirtualHost>
+
+<VirtualHost 172.20.30.50:8080>
+ DocumentRoot /siteler/eorg-8080
+ ServerName example.org
+</VirtualHost>
+ </pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
bir sanal konakta görünmüyorsa bu sankon kesinlikle IP'ye dayalı bir
sanal konaktır.</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
- Listen 80<br />
- <br />
- <VirtualHost 172.20.30.40><br />
- <span class="indent">
- DocumentRoot /siteler/mesela<br />
- ServerName mesela.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40><br />
- <span class="indent">
- DocumentRoot /siteler/faraza<br />
- ServerName faraza.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40><br />
- <span class="indent">
- DocumentRoot /siteler/falanca<br />
- ServerName falanca.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- # IP-based<br />
- <VirtualHost 172.20.30.50><br />
- <span class="indent">
- DocumentRoot /siteler/filanca<br />
- ServerName filanca.dom<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.60><br />
- <span class="indent">
- DocumentRoot /siteler/fesmekan<br />
- ServerName fesmekan.dom<br />
- </span>
- </VirtualHost>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+Listen 80
+
+<VirtualHost 172.20.30.40>
+ DocumentRoot /siteler/ecom
+ ServerName example.com
+</VirtualHost>
+
+<VirtualHost 172.20.30.40>
+ DocumentRoot /siteler/eorg
+ ServerName example.org
+</VirtualHost>
+
+<VirtualHost 172.20.30.40>
+ DocumentRoot /siteler/enet
+ ServerName example.net
+</VirtualHost>
+
+# IP'ye dayalı
+<VirtualHost 172.20.30.50>
+ DocumentRoot /siteler/eedu
+ ServerName example.edu
+</VirtualHost>
+
+<VirtualHost 172.20.30.60>
+ DocumentRoot /siteler/egov
+ ServerName example.gov
+</VirtualHost>
+ </pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
ve konak isminin de aktarılmasını arzuladığımızdan <code class="directive"><a href="../mod/mod_proxy.html#proxypreservehost on">ProxyPreserveHost On</a></code> yönergesini
kullandık.</p>
- <div class="example"><p><code>
- <VirtualHost *:*><br />
- <span class="indent">
- ProxyPreserveHost On<br />
- ProxyPass / http://192.168.111.2/<br />
- ProxyPassReverse / http://192.168.111.2/<br />
- ServerName konak.mesela.dom<br />
- </span>
- </VirtualHost>
- </code></p></div>
+ <pre class="prettyprint lang-config">
+<VirtualHost *:*>
+ ProxyPreserveHost On
+ ProxyPass / http://192.168.111.2/
+ ProxyPassReverse / http://192.168.111.2/
+ ServerName konak.example.com
+</VirtualHost>
+ </pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<p>Bir IP adresi ve port belirtilmeyen veya hiçbir sanal konağın hiçbir
adresi/portu ile eşleşmeyen istekleri yakalamak istersek...</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
+ <pre class="prettyprint lang-config">
+<VirtualHost _default_:*>
+ DocumentRoot /siteler/default
+</VirtualHost>
+ </pre>
- <VirtualHost _default_:*><br />
- <span class="indent">
- DocumentRoot /siteler/default<br />
- </span>
- </VirtualHost>
- </code></p></div>
<p>Bütün portlarla eşleşen böyle bir öntanımlı sanal konağın kullanımı
hiçbir isteğin ana sunucuya gitmemesi sonucunu doğurur.</p>
<p>Önceki yapılandırmaya ek olarak 80. portta ayrı bir
<code>_default_</code> sanal konağı kullanmak istersek...</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
+ <pre class="prettyprint lang-config">
+<VirtualHost _default_:80>
+ DocumentRoot /siteler/default80
+ # ...
+</VirtualHost>
+
+<VirtualHost _default_:*>
+ DocumentRoot /siteler/default
+ # ...
+</VirtualHost>
+ </pre>
- <VirtualHost _default_:80><br />
- <span class="indent">
- DocumentRoot /siteler/default80<br />
- # ...<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost _default_:*><br />
- <span class="indent">
- DocumentRoot /siteler/default<br />
- # ...<br />
- </span>
- </VirtualHost>
- </code></p></div>
<p>80. porttan hizmet sunan <code>_default_</code> sanal konağı IP adresi
belirtilmeyen tüm istekleri yakalar, bunu yapabilmesi için yapılandırma
<p><code>_default_</code> sanal konağının sadece 80. porttan hizmet
sunmasını istersek...</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
+ <pre class="prettyprint lang-config">
+<VirtualHost _default_:80>
+ DocumentRoot /siteler/default
+ ...
+</VirtualHost>
+ </pre>
- <VirtualHost _default_:80><br />
- DocumentRoot /siteler/default<br />
- ...<br />
- </VirtualHost>
- </code></p></div>
<p>80. porttan gelen IP adresi belirtilmemiş isteklere
<code>_default_</code> sanal konağı, diğer portlardan gelen adres
sanal konakla yansılamak</a></h2>
<p>İsme dayalı sanal konak örneklerinin <a href="#twoips">2. sinde</a> adı
- geçen <code>falanca.dom</code> bu örnekte kendi IP adresinden hizmet
+ geçen <code>example.org</code> bu örnekte kendi IP adresinden hizmet
veriyor olsun. İsme dayalı sanal konağı eski IP adresiyle kaydetmiş
vekiller ve isim sunucularından kaynaklanacak olası sorunlardan kaçınmak
için yansılama sırasında sanal konağı hem eski hem de yeni IP adresiyle
sunmamız lazım.</p>
<p>Çözüm kolay, çünkü yapacağımız sadece <code>VirtualHost</code>
- yönergesine yeni IP adresini (<code>192.168.2.2</code>) eklemek
+ yönergesine yeni IP adresini (<code>192.168.1.2</code>) eklemek
olacak.</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
+ <pre class="prettyprint lang-config">
+Listen 80
+ServerName example.com
+DocumentRoot /siteler/ecom
+
+<VirtualHost 192.168.1.20 192.168.1.2>
+ DocumentRoot /siteler/eorg
+ ServerName example.org
+ # ...
+</VirtualHost>
+
+<VirtualHost 192.168.1.20>
+ DocumentRoot /siteler/enet
+ ServerName example.enet
+ ServerAlias *.example.enet
+ # ...
+</VirtualHost>
+ </pre>
- Listen 80<br />
- ServerName mesela.dom<br />
- DocumentRoot /siteler/mesela<br />
- <br />
- <VirtualHost 192.168.1.2><br />
- <br />
- <VirtualHost 192.168.1.2 192.168.2.2><br />
- <span class="indent">
- DocumentRoot /siteler/falanca<br />
- ServerName falanca.dom<br />
- # ...<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 192.168.1.2><br />
- <span class="indent">
- DocumentRoot /siteler/faraza<br />
- ServerName faraza.dom<br />
- ServerAlias *.faraza.dom<br />
- # ...<br />
- </span>
- </VirtualHost>
- </code></p></div>
<p>Böylece sanal konağa hem yeni (bir IP’ye dayalı sanal konak olarak)
hem de eski adresinden (bir isme dayalı sanal konak olarak)
bağlantısı içeren bir bilgilendirme sayfası sunmak üzere yeni bir sanal
konak oluşturabiliriz.</p>
- <div class="example"><h3>Sunucu yapılandırması</h3><p><code>
-
+ <pre class="prettyprint lang-config">
+<VirtualHost 172.20.30.40>
+ # ilk sanal konak
+ DocumentRoot /siteler/baska
+ RewriteEngine On
+ RewriteRule . /siteler/baska/index.html
+ # ...
+</VirtualHost>
+
+<VirtualHost 172.20.30.40>
+DocumentRoot /siteler/baska/bir
+ ServerName bir.baska.tld
+ ServerPath /bir/
+ RewriteEngine On
+ RewriteRule ^(/bir/.*) /siteler/baska$1
+ # ...
+</VirtualHost>
+
+<VirtualHost 172.20.30.40>
+ DocumentRoot /siteler/baska/iki
+ ServerName iki.baska.tld
+ ServerPath /iki/
+ RewriteEngine On
+ RewriteRule ^(/iki/.*) /siteler/baska$1
+ # ...
+</VirtualHost>
+ </pre>
- <VirtualHost 172.20.30.40><br />
- <span class="indent">
- # ilk sanal konak<br />
- DocumentRoot /siteler/baska<br />
- RewriteEngine On<br />
- RewriteRule . /siteler/baska/index.html<br />
- # ...<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40><br />
- DocumentRoot /siteler/baska/bir<br />
- <span class="indent">
- ServerName bir.baska.tld<br />
- ServerPath /bir/<br />
- RewriteEngine On<br />
- RewriteRule ^(/bir/.*) /siteler/baska$1<br />
- # ...<br />
- </span>
- </VirtualHost><br />
- <br />
- <VirtualHost 172.20.30.40><br />
- <span class="indent">
- DocumentRoot /siteler/baska/iki<br />
- ServerName iki.baska.tld<br />
- ServerPath /iki/<br />
- RewriteEngine On<br />
- RewriteRule ^(/iki/.*) /siteler/baska$1<br />
- # ...<br />
- </span>
- </VirtualHost>
- </code></p></div>
<p><code class="directive"><a href="../mod/core.html#serverpath">ServerPath</a></code> yönergesinden dolayı
<code>http://bir.baska.tld/bir/</code> şeklinde yapılan isteklere
<a href="../ko/vhosts/mass.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/vhosts/mass.html" title="Türkçe"> tr </a></p>
</div>
-<div class="outofdate">Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.</div>
<p>Bu belgede sanal konakların sonu belirsiz bir şekilde artışı karşısında
<code><VirtualHost></code> bölümü içereceği zaman yapılacaklar ile
ilgilidir.</p>
-<pre>
+<pre class="prettyprint lang-config">
<VirtualHost 111.22.33.44>
ServerName musteri-1.example.com
DocumentRoot /siteler/musteri-1/belgeler
</VirtualHost>
</pre>
+
<p>İsteğimiz çok sayıda <code><VirtualHost></code> bölümünü devingen
olarak çalışan tek bir <code><VirtualHost></code> bölümüyle
değiştirmektir. Bunun elbette bazı getirileri olacaktır:</p>
düzenlemesinin <code>mod_vhost_alias</code> kullanarak gerçekleştirilmiş
halini içeren <code>httpd.conf</code> bölümü aşağıdadır.</p>
-<div class="example"><p><code>
-# sunucu ismini Host: başlığından elde edelim<br />
-UseCanonicalName Off<br />
-<br />
-# Bu günlükleme biçiminde split-logfile aracı kullanılarak<br />
-# ilk alana dayalı sanal konak günlükleri ayrıştırılabilir<br />
-LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br />
-CustomLog logs/access_log vcommon<br />
-<br />
-# istekleri yerine getirmek için kullanılacak<br />
-# dosya isimlerine sunucu ismini ekleyelim<br />
-VirtualDocumentRoot /siteler/%0/belgeler<br />
+<pre class="prettyprint lang-config">
+# sunucu ismini Host: başlığından elde edelim
+UseCanonicalName Off
+
+# Bu günlükleme biçiminde split-logfile aracı kullanılarak
+# sanal konak günlükleri ilk alana göre ayrıştırılabilir
+LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon
+CustomLog logs/access_log vcommon
+
+# istekleri yerine getirmek için kullanılacak
+# dosya isimlerine sunucu ismini ekleyelim
+VirtualDocumentRoot /siteler/%0/belgeler
VirtualScriptAlias /siteler/%0/cgi-bin
-</code></p></div>
+</pre>
+
<p>Bu yapılandırmayı IP’ye dayalı sanal konaklar için kullanmak isterseniz
<code>UseCanonicalName Off</code> yerine <code>UseCanonicalName
sanal konak için bir tane değil hepsi için bir tane <code>cgi-bin</code>
olacaktır.</p>
- <div class="example"><p><code>
- UseCanonicalName Off<br />
- <br />
- LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br />
- CustomLog logs/access_log vcommon<br />
- <br />
- # sunucu ismini içerecek dosya isimlerini oluşturalım<br />
- VirtualDocumentRoot /home/%2/www<br />
- <br />
- # ortak cgi-bin dizini<br />
- ScriptAlias /cgi-bin/ /siteler/std-cgi/<br />
- </code></p></div>
+ <pre class="prettyprint lang-config">
+UseCanonicalName Off
+
+LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon
+CustomLog logs/access_log vcommon
+
+# sunucu ismini içerecek dosya isimlerini oluşturalım
+VirtualDocumentRoot /home/%2/www
+
+# ortak cgi-bin dizini
+ScriptAlias /cgi-bin/ /siteler/std-cgi/
+ </pre>
+
<p><code class="module"><a href="../mod/mod_vhost_alias.html">mod_vhost_alias</a></code> belgesinde daha karmaşık
<code>VirtualDocumentRoot</code> örnekleri vardır.</p>
başka bir IP adresiniz olsun. Her biri için ayrı ayrı sanal konaklar
ayarlamak yerine aşağıdaki gibi bir yapılandırma kullanabilirsiniz:</p>
-<div class="example"><p><code>
-UseCanonicalName Off<br />
-<br />
-LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br />
-<br />
-<Directory /siteler/kurumsal><br />
-<span class="indent">
- Options FollowSymLinks<br />
- AllowOverride All<br />
-</span>
-</Directory><br />
-<br />
-<Directory /siteler/bireysel><br />
-<span class="indent">
- Options FollowSymLinks<br />
- AllowOverride None<br />
-</span>
-</Directory><br />
-<br />
-<VirtualHost 111.22.33.44><br />
-<span class="indent">
- ServerName kurumsal.example.com<br />
- <br />
- CustomLog logs/access_log.kurumsal vcommon<br />
- <br />
- VirtualDocumentRoot /siteler/kurumsal/%0/belgeler<br />
- VirtualScriptAlias /siteler/kurumsal/%0/cgi-bin<br />
-</span>
-</VirtualHost><br />
-<br />
-<VirtualHost 111.22.33.45><br />
-<span class="indent">
- ServerName bireysel.example.com<br />
- <br />
- CustomLog logs/access_log.bireysel vcommon<br />
- <br />
- VirtualDocumentRoot /siteler/bireysel/%0/belgeler<br />
- ScriptAlias /cgi-bin/ /siteler/std-cgi/<br />
-</span>
+<pre class="prettyprint lang-config">
+UseCanonicalName Off
+
+LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon
+
+<Directory /siteler/kurumsal>
+ Options FollowSymLinks
+ AllowOverride All
+</Directory>
+
+<Directory /siteler/bireysel>
+ Options FollowSymLinks
+ AllowOverride None
+</Directory>
+
+<VirtualHost 111.22.33.44>
+ ServerName kurumsal.example.com
+
+ CustomLog logs/access_log.kurumsal vcommon
+
+ VirtualDocumentRoot /siteler/kurumsal/%0/belgeler
+ VirtualScriptAlias /siteler/kurumsal/%0/cgi-bin
</VirtualHost>
-</code></p></div>
+
+<VirtualHost 111.22.33.45>
+ ServerName bireysel.example.com
+
+ CustomLog logs/access_log.bireysel vcommon
+
+ VirtualDocumentRoot /siteler/bireysel/%0/belgeler
+ ScriptAlias /cgi-bin/ /siteler/std-cgi/
+</VirtualHost>
+</pre>
+
<div class="note"><h3>Bilginize</h3>
<p>Eğer ilk <code><VirtualHost></code> bölümü bir <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code> yönergesi içermezse ilgili IP
adreslerine göre düzenlenebilir. Günlük kayıtları da IP adreslerine göre
ayrıştırılacak şekilde ayarlanabilir.</p>
-<div class="example"><p><code>
-# Sunucu ismini IP adresinden ters DNS sorgusu ile elde edelim<br />
-UseCanonicalName DNS<br />
-<br />
-# Günlük kayıtları IP adreslerine göre ayrıştırılabilsin<br />
-LogFormat "%A %h %l %u %t \"%r\" %s %b" vcommon<br />
-CustomLog logs/access_log vcommon<br />
-<br />
-# dosya isimleri IP adreslerini içersin<br />
-VirtualDocumentRootIP /siteler/%0/belgeler<br />
-VirtualScriptAliasIP /siteler/%0/cgi-bin<br />
-</code></p></div>
+<pre class="prettyprint lang-config">
+# Sunucu ismini IP adresinden ters DNS sorgusu ile elde edelim
+UseCanonicalName DNS
+
+# Günlük kayıtları IP adreslerine göre ayrıştırılabilsin
+LogFormat "%A %h %l %u %t \"%r\" %s %b" vcommon
+CustomLog logs/access_log vcommon
+
+# dosya isimleri IP adreslerini içersin
+VirtualDocumentRootIP /siteler/%0/belgeler
+VirtualScriptAliasIP /siteler/%0/cgi-bin
+</pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">