<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
<!-- English Revision: 1673563 -->
<!-- =====================================================
 Translated by: Nilgün Belma Bugüner <nilgun belgeler.gen.tr>
   Reviewed by: Orhan Berent <berent belgeler.gen.tr>
========================================================== -->

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<manualpage metafile="ip-based.xml.meta">
<parentdocument href="./">Sanal Konaklar</parentdocument>
   <title>IP’ye Dayalı Sanal Konak Desteği</title>

<seealso>
<a href="name-based.html">İsme Dayalı Sanal Konak Desteği</a>
</seealso>

<section id="explanation"><title>IP'ye dayalı sanal konak desteği nedir</title>
    <p>IP'ye dayalı sanal konak desteği, bir isteğin alındığı IP adresi ve
      porta bağlı olarak farklı yönergeleri uygulamak için bir yoldur. Özetle,
      farklı siteleri farklı portlardan ve arayüzlerden sunmakta
      kullanılır.</p>

     <p>Çoğu durumda, <a href="name-based.html">isme dayalı sanal konaklar</a>
       birçok sanal konağın tek bir IP adresi/port çiftini paylaşmasını
       sağladığından daha kullanışlıdır. Neyi kullanacağınıza karar vermek için
       <a href="name-based.html#namevip">İsme dayalı ve IP’ye dayalı Sanal
       Konaklar</a> bölümüne bakınız.</p>
</section>

<section id="requirements"><title>Sistem gereksinimleri</title>

    <p><cite>IP’ye dayalı</cite> deyince, sunucunun <strong>her IP’ye dayalı
      sanal konak için ayrı bir IP adresi/port çifti</strong>ne sahip olduğunu
      anlıyoruz. Bunun olması için, makine ya çok sayıda ağ bağlantısına
      sahiptir ya da makinede, günümüzde çoğu işletim sistemi tarafından
      desteklenen sanal arabirimler ve/veya çok sayıda port kullanılıyordur.
      (Sanal arabirimlerle ilgili ayrıntılar için sistem belgelerinize bakınız;
      bu konu genellikle IP rumuzları (ip aliases) olarak geçer ve ayarlamak
      için genellikle "ifconfig" komutu kullanılır.)</p>

    <p>Apache HTTP Sunucusu terminolojisinde, tek bir IP adresinin çok sayıda
      TCP portuyla kullanımı IP'ye dayalı sanal konak desteği olarak
      bilinir.</p>
</section>

<section id="howto"><title>Apache nasıl ayarlanır?</title>

    <p>Çok sayıda konağı desteklemek üzere Apache iki şekilde
      yapılandırılabilir. Ya her konak için ayrı bir <program>httpd</program>
      süreci çalıştırırsınız ya da tüm sanal konakları destekleyen tek bir
      süreciniz olur.</p>

    <p>Çok sayıda süreç kullanıyorsanız:</p>

    <ul>
      <li>Güvenli bölgeler oluşturmanız gerekiyordur. Örneğin, şirket2’deki hiç
        kimse dosya sistemi üzerinden şirket1’e ait verileri okuyamasın, sadece
        herkes gibi tarayıcı kullanarak okuyabilsin istenebilir.  Bu durumda,
        <directive module="mod_unixd">User</directive>,
        <directive module="mod_unixd">Group</directive>,
        <directive module="mpm_common">Listen</directive> ve
        <directive module="core">ServerRoot</directive> yönergeleri farklı
        değerlerle yapılandırılmış iki ayrı süreç çalıştırmanız gerekir.</li>

      <li>Makine üzerindeki her IP adresini dinlemek için gereken dosya tanıtıcı
        ve bellek miktarını makul bir seviyede tutabilirsiniz. Bu sadece belli
        adresleri dinleyerek veya çok sayıda adresle eşleşen adres kalıpları
        kullanarak mümükün olabilir. Zaten, bir sebeple belli bir adresi dinleme
        ihtiyacı duyarsanız, diğer tüm adresleri de ayrı ayrı dinlemeniz
        gerekir. (Bir <program>httpd</program> programı N-1 adresi dinlerken
        diğerleri kalan adresleri dinleyebilir.)</li>
    </ul>

    <p>Tek bir süreç kullanıyorsanız:</p>

    <ul>
      <li><program>httpd</program> yapılandırmasının sanal konaklar arasında
        paylaşılmasına izin veriliyor demektir.</li>

      <li>Makine çok büyük miktarda isteği karşılayabilir ve ayrı ayrı
        süreçlerin çalışmasından kaynaklanan önemli başarım kayıpları
        yaşanmaz.</li>
    </ul>

</section>

<section id="multiple"><title>Çok sayıda sürecin yapılandırılması</title>

    <p>Her sanal konak için ayrı bir <program>httpd</program> yapılandırması
      oluşturulur. Her yapılandırmada, o süreç tarafından sunulacak IP adresi
      (veya sanal konak) için <directive module="mpm_common">Listen</directive>
      yönergesi kullanılır. Örnek:</p>

    <highlight language="config">
Listen 192.0.2.100:80
    </highlight>

    <p>Burada konak ismi yerine IP adresi kullanmanız önerilir (ayrıntılar için
      <a href="../dns-caveats.html">DNS ile ilgili konular</a> belgesine
      bakınız).</p>

</section>

<section id="single"><title>Sanal konaklar tek bir sürecin yapılandırılması</title>

    <p>Bu durum için, ana sunucu ve sanal konakların tümüne gelen istekler tek
      bir <program>httpd</program> süreci tarafından karşılanır. Yapılandırma
      dosyasında, her sanal konak için, farklı değerlere sahip <directive
      module="core">ServerAdmin</directive>, <directive
      module="core">ServerName</directive>, <directive
      module="core">DocumentRoot</directive>, <directive
      module="core">ErrorLog</directive>ve<directive
      module="mod_log_config">TransferLog</directive>
      veya <directive module="mod_log_config">CustomLog</directive> yönergeleri
      içeren ayrı birer <directive module="core">VirtualHost</directive> bölümü
      oluşturulur. Örnek:</p>

    <highlight language="config">
&lt;VirtualHost 192.168.1.10:80&gt;
    ServerAdmin bilgi@example.com
    DocumentRoot "/siteler/belgeler/ecom"
    ServerName example.com
    ErrorLog "/siteler/gunlukler/ecom/hatalar.log"
    CustomLog "/siteler/gunlukler/ecom/erisim.log" combined
&lt;/VirtualHost&gt;

&lt;VirtualHost 192.168.1.20:80&gt;
    ServerAdmin bilgi@example.org
    DocumentRoot "/siteler/belgeler/eorg"
    ServerName example.org
    ErrorLog "/siteler/gunlukler/eorg/hatalar.log"
    CustomLog "/siteler/gunlukler/eorg/erisim.log" combined
&lt;/VirtualHost&gt;
    </highlight>

    <p>&lt;VirtualHost&gt; yönergesinde konak ismi yerine
       IP adresi kullanmanız önerilir (ayrıntılar için
       <a href="../dns-caveats.html">DNS ile ilgili konular</a>
       belgesine bakınız).</p>

    <p>Belli bir IP adresi veya port kullanımı bunların joker eşdeğerlerine
      göre daha yüksek öncelik sağlar ve eşleşen bir sanal konak da genel
      sunucuya göre öncelik alır.</p>

    <p>Süreç oluşturmayı denetleyen yönergeler ve bir kaç başka yönerge dışında
      hemen hemen tüm yapılandırma yönergeleri <directive
      module="core">VirtualHost</directive> bölümleri içinde kullanılabilir.
      Bir yönergenin <directive module="core">VirtualHost</directive>
      bölümlerinde kullanılıp kullanılmayacağını öğrenmek için <a
      href="../mod/directives.html">yönerge dizinini</a> kullanarak yönergenin
      <a href="../mod/directive-dict.html#Context">Bağlam</a>’ına bakınız.</p>

    <p><a href="../suexec.html">suEXEC sarmalayıcısı</a> kullanıldığı takdirde
      <directive module="mod_suexec">SuexecUserGroup</directive> yönergesi de
      bir <directive module="core">VirtualHost</directive> bölümü içinde
      kullanılabilir.</p>

    <p><em>GÜVENLİK:</em>Günlük dosyalarının yazılacağı yeri belirlerken,
      Apache’yi başlatan kullanıcıdan başka kimsenin yazamayacağı bir yerin
      seçilmesi bazı güvenlik risklerini ortadan kaldırmak bakımından
      önemlidir. Ayrıntılar için <a href="../misc/security_tips.html">güvenlik
      ipuçları</a> belgesine bakınız.</p>
</section>
</manualpage>
