1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
|
<?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: 752951:1174747 (outdated) -->
<!-- =====================================================
Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
Reviewed by: Orhan Berent <berent belgeler.org>
========================================================== -->
<!--
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>Apache’de IP’ye Dayalı Sanal Konak Desteği</title>
<seealso>
<a href="name-based.html">İsme Dayalı Sanal Konak Desteği</a>
</seealso>
<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</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 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>
</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="mpm_common">User</directive>,
<directive module="mpm_common">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>
<example>
Listen www.birkobi.dom:80
</example>
<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>
<example>
<VirtualHost 192.168.1.10:80>
<indent>
ServerAdmin bilgi@posta.birkobi.dom<br />
DocumentRoot /gruplar/birkobi/belgeler<br />
ServerName www.birkobi.dom<br />
ErrorLog /gruplar/birkobi/günlükler/hatalar.log<br />
TransferLog /gruplar/birkobi/günlükler/erisim.log
</indent>
</VirtualHost><br />
<br />
<VirtualHost 192.168.1.20:80>
<indent>
ServerAdmin bilgi@posta.digerkobi.dom<br />
DocumentRoot /gruplar/digerkobi/belgeler<br />
ServerName www.digerkobi.dom<br />
ErrorLog /gruplar/digerkobi/günlükler/hatalar.log<br />
TransferLog /gruplar/digerkobi/günlükler/erisim.log
</indent>
</VirtualHost>
</example>
<p><VirtualHost> 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>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>
|