2 <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
3 <?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
4 <!-- English Revision: 804678:1057049 (outdated) -->
5 <!-- =====================================================
6 Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
7 Reviewed by: Orhan Berent <berent belgeler.org>
8 ========================================================== -->
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.
27 <modulesynopsis metafile="mpm_common.xml.meta">
29 <name>mpm_common</name>
30 <description>Birden fazla Çok Süreçlilik Modülü (MPM) tarafından gerçeklenmiş
31 yönergeler bütünü.</description>
35 <name>AcceptMutex</name>
36 <description>Apache HTTPd Sunucusunun ağ soketlerinden istekleri kabul eden
37 çok sayıda çocuk süreci sıraya sokmak için kullandığı yöntemi
38 belirler.</description>
39 <syntax>AcceptMutex Default|<var>yöntem</var></syntax>
40 <default>AcceptMutex Default</default>
41 <contextlist><context>server config</context></contextlist>
42 <modulelist><module>prefork</module><module>worker</module>
46 <p><directive>AcceptMutex</directive> yönergesi Apache HTTPd Sunucusunun
47 ağ soketlerinden istekleri kabul eden çok sayıda çocuk süreci sıraya
48 sokmak için kullandığı yöntemi (ve uygunsa kilit dosyasının yerini)
49 belirler. Apache 2.0’dan önce, yöntem sadece derleme sırasında
50 seçilebiliyordu. Kullanılacak en uygun yöntem mimariye ve platforma aşırı
51 derecede bağımlıdır. Bu konuda daha ayrıntılı bilgi edinmek için <a
52 href="../misc/perf-tuning.html">Başarım Arttırma İpuçları</a> belgesine
55 <p>Bu yönergeye değer olarak <code>Default</code> belirtilmişse derleme
56 sırasında seçilen öntanımlı yöntem kullanılacaktır. Diğer olası yöntemler
57 aşağıda listelenmiştir. Tüm yöntemlerin tüm platformlarda mevcut
58 olmadığına dikkat ediniz. Eğer belirtilen yöntem mevcut değilse hata
59 günlüğüne mevcut yöntemlerin listesini içeren bir ileti yazılacaktır.</p>
62 <dt><code>flock<<var>:/dosya/yolu/kilit.dosyası</var>></code></dt>
63 <dd>İsteğe bağlı <var>/dosya/yolu/kilit.dosyası</var> ile tanımlanan
64 dosyayı kilitlemek için <code>flock(2)</code> sistem çağrısı kullanılır.
65 Ayrıca, önerilmiyor olsa bile kilit dosyasının yerini belirtmek için
66 <directive module="mpm_common">LockFile</directive> yönergesi
69 <dt><code>fcntl<<var>:/dosya/yolu/kilit.dosyası</var>></code></dt>
70 <dd>İsteğe bağlı <var>/dosya/yolu/kilit.dosyası</var> ile tanımlanan
71 dosyayı kilitlemek için <code>fcntl(2)</code> sistem çağrısı
72 kullanılır. Ayrıca, önerilmiyor olsa bile kilit dosyasının yerini
73 belirtmek için <directive module="mpm_common">LockFile</directive>
74 yönergesi kullanılabilir.</dd>
76 <dt><code>file<<var>:/dosya/yolu/kilit.dosyası</var>></code></dt>
77 <dd>Bu yönerge Apache’ye, <code>fcntl</code> ve <code>flock</code>
78 arasında "en iyi" dosya kilitleme gerçeklenimini seçip kullanmasını
79 söyler. Sadece bu işlevleri içeren ve <glossary>APR</glossary>’nin
80 ikisinden birini desteklediği platformlarda kullanılabilir.</dd>
82 <dt><code>posixsem</code></dt>
83 <dd>Muteksleri gerçeklemek için POSIX uyumlu semaforlar kullanılır.</dd>
85 <dt><code>sysvsem</code></dt>
86 <dd>Muteksleri gerçeklemek için SysV tarzı semaforlar kullanılır.</dd>
88 <dt><code>sem</code></dt>
89 <dd>Bu yönerge Apache’ye, POSIX ve SystemV IPC arasında "en iyi" semafor
90 gerçeklenimini seçip kullanmasını söyler. Sadece bu semaforları içeren
91 ve <glossary>APR</glossary>’nin ikisinden birini desteklediği
92 platformlarda kullanılabilir.</dd>
94 <dt><code>pthread</code></dt>
95 <dd>POSIX Evreleri (PThreads) belirtimi tarafından gerçeklenen muteksler
100 <p>Sisteminiz için derleme sırasında seçilmiş öntanımlı yöntemi öğrenmek
101 isterseniz <directive module="core">LogLevel</directive> yönergesine
102 <code>debug</code> değerini atayabilirsiniz. Öntanımlı <directive
103 >AcceptMutex</directive>, <directive module="core">ErrorLog</directive>
104 ile belirtilen günlük dosyasına yazılacaktır.</p>
106 <note type="warning"><title>Uyarı</title>
107 <p>Çoğu sistemde, <code>pthread</code> seçeneği seçildiği takdirde,
108 <code>AcceptCntl</code> muteksi tutulurken bir çocuk süreç anormal
109 şekilde sonlanırsa, muteksi kurtarmak için sunucunun elle yeniden
110 başlatılması gerekecektir.</p>
111 <p>Solaris, bir muteks tutulurken, bir çocuk süreç anormal şekilde
112 sonlandıktan sonra muteksin Apache tarafından kurtarılmasına imkan veren
113 bir mekanizma sağlaması sebebiyle diğerlerinden ayrılır.</p>
114 <p>Sisteminiz <code>pthread_mutexattr_setrobust_np()</code> işlevini
115 gerçekliyorsa <code>pthread</code> seçeneğini gönül rahatlığıyla
116 kullanabilirsiniz.</p>
122 <name>CoreDumpDirectory</name>
123 <description><code>core</code> dosyasını dökümlemek üzere Apache’nin geçmeye
124 çalışacağı dizin.</description>
125 <syntax>CoreDumpDirectory <var>dizin</var></syntax>
126 <default>Öntanımlı değer için aşağıdaki açıklamaya bakınız</default>
127 <contextlist><context>server config</context></contextlist>
128 <modulelist><module>mpm_winnt</module><module>prefork</module>
129 <module>worker</module></modulelist>
132 <p>Bu yönerge <code>core</code> dosyasını dökümlemek üzere Apache’nin
133 geçmeye çalışacağı dizini belirler. Eğer işletim sisteminiz, çöken bir
134 sürecin olması durumunda <code>core</code> dosyasını çalışma dizinine
135 yazacak şekilde yapılandırılmışsa,
136 <directive>CoreDumpDirectory</directive> yönergesinin değeri olarak,
137 öntanımlı olan ve sunucuyu çalıştıran kullanıcı tarafından yazılamayan
138 <directive module="core">ServerRoot</directive> dizini yerine çalışma
139 dizinini belirtmek gerekir.</p>
140 <p>Hata ayıklamak amacıyla bir <code>core</code> dosyası dökümlemek
141 isterseniz farklı bir yer belirtmek için bu yönergeyi
142 kullanabilirsiniz. Eğer işletim sisteminiz çöken bir sürecin olması
143 durumunda <code>core</code> dosyasını çalışma dizinine yazacak şekilde
144 yapılandırılmamışsa, bu yönergenin bir etkisi olmaz.</p>
146 <note><title>Linux üzerinde <code>core</code> dökümlemek</title>
147 <p>Apache root olarak başlatılıp başka bir kullanıcıya geçilirse Linux
148 çekirdeği süreç tarafından yazılabilir olsa bile <code>core</code>
149 dökümlemeyi <em>iptal eder</em>. Eğer
150 <directive>CoreDumpDirectory</directive> yönergesi ile açıkça bir
151 dizin belirtirseniz, Apache (2.0.46 ve sonraki sürümleri), Linux 2.4
152 ve sonrasında <code>core</code> dökümlemeyi yeniden
153 etkinleştirecektir.</p>
156 <note><title>Özel sinyaller</title>
157 <p><directive>CoreDumpDirectory</directive> işlemi sadece belli
158 sinyaller için gerçekleşir: SIGFPE, SIGILL, SIGABORT, SIGSEGV ve
160 <p>Bazı işletim sistemlerinde SIGQUIT sinyali de bir <code>core</code>
161 dosyası dökümler ancak bunu <directive>CoreDumpDirectory</directive>
162 veya <directive>EnableExceptionHook</directive> işlemi üzerinden
163 yapmaz, dolayısıyla <code>core</code> dosyasının yeri tamamen işletim
164 sisteminin belirlediği yer olur.</p>
171 <name>EnableExceptionHook</name>
172 <description>Bir çöküş sonrası olağandışılık eylemcilerini çalıştıracak
173 kancayı etkin kılar.</description>
174 <syntax>EnableExceptionHook On|Off</syntax>
175 <default>EnableExceptionHook Off</default>
176 <contextlist><context>server config</context></contextlist>
177 <modulelist><module>prefork</module><module>worker</module></modulelist>
178 <compatibility>Sürüm 2.0.49 ve sonrasında mevcuttur</compatibility>
181 <p>Güvenlik sebebiyle bu yönerge sadece Apache
182 <code>--enable-exception-hook</code> seçeneği ile yapılandırılmışsa
183 kullanılabilir olacaktır. Bu, harici modüllerin eklenmesine ve bir çocuk
184 sürecin çöküşü sonrası bir şeyler yapmaya izin veren bir kancayı etkin
187 <p>Bu kancayı kullanan iki modül (<code>mod_whatkilledus</code> ve
188 <code>mod_backtrace</code>) zaten vardır. bunlar hakkında daha fazla bilgi
189 edinmek için Jeff Trawick'in <a
190 href="http://www.apache.org/~trawick/exception_hook.html"
191 >EnableExceptionHook site</a>sine bakabilirsiniz.</p>
196 <name>GracefulShutdownTimeout</name>
197 <description>Sunucunun nazikçe kapatılmasının ardından ana süreç çıkana kadar
198 geçecek süre için bir zaman aşımı belirler.</description>
199 <syntax>GracefulShutDownTimeout <var>saniye</var></syntax>
200 <default>GracefulShutDownTimeout 0</default>
201 <contextlist><context>server config</context></contextlist>
202 <modulelist><module>prefork</module><module>worker</module>
203 <module>event</module></modulelist>
204 <compatibility>Sürüm 2.2 ve sonrasında mevcuttur</compatibility>
207 <p><directive>GracefulShutdownTimeout</directive> yönergesi, sunucuya
208 "nazikçe dur" sinyali gönderildikten sonra mevcut bağlantılara hizmet
209 sunmaya daha kaç saniye devam edebileceğini belirtir.</p>
211 <p>Bu değerin <code>0</code> olarak belirtilmesi, sunucunun bekleyen bütün
212 isteklere hizmet sunumu tamamlanıncaya kadar (gerekirse sonsuza kadar)
213 bekleyebileceği anlamına gelir.</p>
219 <description>Ana sürecin süreç kimliğinin (PID) kaydedileceği dosyayı belirler.</description>
220 <syntax>PidFile <var>dosya</var></syntax>
221 <default>PidFile logs/httpd.pid</default>
222 <contextlist><context>server config</context></contextlist>
223 <modulelist><module>mpm_winnt</module><module>mpmt_os2</module>
224 <module>prefork</module><module>worker</module></modulelist>
227 <p><directive>PidFile</directive> yönergesi, sunucunun artalan sürecinin
228 süreç kimliğinin kaydedileceği dosyayı belirler. Dosya ismi mutlak dosya
229 yoluyla belirtilmemişse dosya yolunun <directive
230 module="core">ServerRoot</directive> dizinine göre belirtildiği kabul
233 <example><title>Örnek</title>
234 PidFile /var/run/apache.pid
237 <p>Sunucuya sinyal gönderebilmek çoğunlukla işe yarar. Böylece <directive
238 module="core">ErrorLog</directive> ve <directive
239 module="mod_log_config">TransferLog</directive> dosyaları kapatılıp
240 yeniden açılır ve yapılandırma dosyaları yeniden okunur. Bu,
241 <directive>PidFile</directive> dosyasında belirtilen süreç kimliğine bir
242 SIGHUP (kill -1) sinyali gönderilerek yapılır.</p>
244 <p>Günlük dosyasının yeri ve <a
245 href="../misc/security_tips.html#serverroot">güvenlik</a> ile ilgili
246 uyarılar <directive>PidFile</directive> dosyası içinde sözkonusu
249 <note><title>Ek Bilgi</title>
250 <p>Apache 2’de sunucuyu (yeniden) başlatırken veya durdururken sadece
251 <program>apachectl</program> betiğini kullanmanız önerilir.</p>
258 <description>Sunucunun dinleyeceği IP adresini ve portu belirler.</description>
259 <syntax>Listen [<var>IP-adresi</var>:]<var>port-numarası</var>
260 [<var>protokol</var>]</syntax>
261 <contextlist><context>server config</context></contextlist>
262 <modulelist><module>mpm_netware</module><module>mpm_winnt</module>
263 <module>mpmt_os2</module><module>perchild</module>
264 <module>prefork</module><module>worker</module><module>event</module>
266 <compatibility>Apache 2.0’dan beri gerekli yönergelerden biridir.<br/>
267 <var>protokol</var> argümanı 2.1.5 sürümünde eklenmiştir.</compatibility>
270 <p><directive>Listen</directive> yönergesi Apache’yi sadece belli IP
271 adreslerini ve portlarını dinlemeye sevkeder.
272 <directive>Listen</directive> artık belirtilmesi zorunlu yönergelerden
273 biridir. Yapılandırma dosyasında bulunmadığı takdirde sunucu
274 başlatılırken başarısız olacaktır. Bu Apache Sunucusunun önceki
275 sürümünde böyle değildi.</p>
277 <p><directive>Listen</directive> yönergesi Apache’ye, sadece belli
278 portlardan veya IP adresi ve port çiftlerinden gelen istekleri kabul
279 etmesini söyler. Eğer sadece port numarası belirtilmişse sunucu
280 belirtilen portu bütün ağ arabirimlerinde dinleyecektir. Eğer portla
281 birlikte bir IP adresi de belirtilmişse, sunucu belirtilen portu sadece
282 belirtilen arabirimden dinleyecektir.</p>
284 <p>Çok sayıda IP adresi ve port belirtmek için çok sayıda
285 <directive>Listen</directive> yönergesi kullanılabilir. Sunucu bu
286 durumda belirtilen bütün IP adreslerinden ve portlardan gelecek
287 isteklere yanıt verecektir.</p>
289 <p>Örneğin sunucunun hem port 80 hem de port 8000’den istek kabul etmesini
290 istiyorsanız bunu şöyle belirtebilirsiniz:</p>
297 <p>Sunucunun belirtilen iki ağ arabiriminden ve port numarasından gelen
298 bağlantıları kabul etmesi için şu yapılandırmayı kullanabilirsiniz:</p>
301 Listen 192.170.2.1:80<br />
302 Listen 192.170.2.5:8000
305 <p>IPv6 adresleri belirtilirken örnekteki gibi köşeli ayraçlar arasına
309 Listen [2001:db8::a00:20ff:fea7:ccea]:80
312 <p>İsteğe bağlı <var>protocol</var> argümanı çoğu yapılandırmada gerekli
313 değildir. Belirtilmediği takdirde. port 443 için <code>https</code> ve
314 tüm diğer portlar için <code>http</code> öntanımlıdır. Protokol, isteği
315 hangi modülün elde edeceğinin ve <directive
316 module="core">AcceptFilter</directive> yönergesi ile protokole özgü
317 hangi en iyilemelerin uygulanacağının saptanmasında kullanılır.</p>
319 <p>Protokol belirtme ihtiyacını sadece standartdışı portlar
320 çalıştırıyorsanız duyarsınız. Örneğin, port 8443 üzerinde bir
321 <code>https</code> sitesi çalıştırmak istiyorsanız bunu şöyle
322 belirtebilirsiniz:</p>
325 Listen 192.170.2.1:8443 https
328 <note><title>Hata durumu</title>
329 Aynı IP adresi ve portun çok sayıda <directive>Listen</directive>
330 yönergesinde belirtilmesi bir "adres kullanımda" (<code>Address already
331 in use</code>) hatasına yol açar.
335 <seealso><a href="../dns-caveats.html">DNS ve Apache ile ilgili Konular</a> </seealso>
336 <seealso><a href="../bind.html">Sunucunun Kullandığı Adreslerin ve Portların
337 Ayarlanması</a></seealso>
341 <name>ListenBackLog</name>
342 <description>Bekleyen bağlantılar kuyruğunun azami uzunluğunu
343 belirler</description>
344 <syntax>ListenBacklog <var>kuyruk-uzunluğu</var></syntax>
345 <default>ListenBacklog 511</default>
346 <contextlist><context>server config</context></contextlist>
347 <modulelist><module>beos</module><module>leader</module>
348 <module>mpm_netware</module><module>mpm_winnt</module>
349 <module>mpmt_os2</module><module>prefork</module><module>worker</module>
353 <p>Bekleyen bağlantılar kuyruğunun azami uzunluğu. Genellikle bu ayar ne
354 gerekir ne de istenir. Ancak bazı sistemlerde TCP SYN yüklenme
355 saldırılarına karşı bu değerin arttırılması gerekebilir.
356 <var>kuyruk-uzunluğu</var> parametresi için <code>listen(2)</code>
357 işlevinin açıklamasına bakınız.</p>
359 <p>Bu değer çoğunlukla işletim sistemi tarafından daha küçük bir sayıyla
360 sınırlanır. Bu, işletim sistemine bağlı olarak değişiklik gösterir.
361 Ayrıca, çoğu işletim sisteminin <var>kuyruk-uzunluğu</var> parametresi
362 ile ne belirttiğinize bakmaksızın kendisi için atanmış değeri (fakat
363 normal olarak daha büyüğünü) kullanacağına dikkat ediniz.</p>
368 <name>LockFile</name>
369 <description>Apache HTTPd Sunucusunun ağ soketlerinden istekleri kabul eden
370 çok sayıda çocuk süreci sıraya sokarken kullandığı kilit dosyasının yerini
371 belirler. <em>(kullanımı önerilmemektedir)</em></description>
372 <syntax>LockFile <var>dosya</var></syntax>
373 <default>LockFile logs/accept.lock</default>
374 <contextlist><context>server config</context></contextlist>
375 <modulelist><module>prefork</module><module>worker</module>
379 <p><directive>LockFile</directive> yönergesi, <directive
380 module="mpm_common">AcceptMutex</directive> yönergesi <code>fcntl</code>
381 veya <code>flock</code> değeri ile belirtildiği takdirde kullanılan
382 kilit dosyasının yerini belirler. Bu yönerge normalde öntanımlı
383 değeriyle bırakılır. Değişmesini gerektiren ana sebep, <code>logs</code>
384 dizininin ağ dosya sisteminde (NFS) yeralması halinde <strong>kilit
385 dosyasının bir yerel diskte saklanması gereği</strong>dir. Ana sürecin
386 süreç kimliği dosyaya kendiliğinden eklenir.</p>
388 <note type="warning"><title>Güvenlik</title>
389 <p>Bu dosyayı herkesin yazabildiği <code>/var/tmp</code> gibi bir dizine
390 koymaktan kaçınmak gerekir. Çünkü, bu takdirde, birileri sunucunun
391 hizmet sunmaya başlarken oluşturacağı kilit dosyası ile aynı isimde
392 bir dosya oluşturarak hizmet reddi saldırısı (DoS) başlatabilir.</p>
394 <note type="warning"><title>Kullanımı önerilmiyor</title>
395 <p>Bu yönergenin kullanılması önerilmemektedir. Kilit dosyasının yerini
396 <directive module="mpm_common">AcceptMutex</directive> yönergesinde
397 muteks kilitleme gerçeklenimiyle birlikte belirtmeniz
402 <seealso><directive module="mpm_common">AcceptMutex</directive></seealso>
406 <name>MaxClients</name>
407 <description>Aynı anda işleme sokulacak azami bağlantı sayısı</description>
408 <syntax>MaxClients <var>sayı</var></syntax>
409 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
410 <contextlist><context>server config</context></contextlist>
411 <modulelist><module>prefork</module><module>worker</module>
415 <p><directive>MaxClients</directive> yönergesi aynı anda işleme sokulacak
416 bağlantı sayısını sınırlamak için kullanılır. <directive
417 >MaxClients</directive> bağlantı isteğinden fazlası geldiği takdirde bu
418 istekler normal olarak kuyruğa alınıp bekletilir. Kuyrukta bekletilecek
419 isteklerin azami sayısı ise <directive module="mpm_common"
420 >ListenBacklog</directive> yönergesi ile belirlenir. İstek sunmakta olan
421 çocuk süreçlerden biri serbest kaldığında bekletilen bağlantılardan
422 birine hizmet sunulmaya başlanır.</p>
424 <p>Evreli olmayan sunucularda (<module>prefork</module> gibi)
425 <directive>MaxClients</directive> yönergesi istekleri sunmak için
426 başlatılacak çocuk süreçlerin azami sayısını belirler. Öntanımlı değer
427 256 olup bu değeri arttırmak isterseniz <directive
428 module="mpm_common">ServerLimit</directive> değerini de
431 <p>Çok evreli ve melez sunucularda (<module>event</module> veya
432 <module>worker</module> gibi) <directive>MaxClients</directive>
433 yönergesi istemcilere hizmet verecek evre sayısını sınırlar. Öntanımlı
434 değer melez MPM’ler için 16'dır
435 (<directive module="mpm_common">ServerLimit</directive> ile <directive
436 module="mpm_common">ThreadsPerChild</directive> çarpılır: <code>16 x
437 25</code>). Bu bakımdan <directive>MaxClients</directive> değerini 16
438 süreçten fazlasına ayarlamak için <directive
439 module="mpm_common">ServerLimit</directive> değerini de
445 <name>MaxMemFree</name>
446 <description><code>free()</code> çağrılmaksızın ana bellek ayırıcının
447 ayırmasına izin verilen azami bellek miktarını belirler.</description>
448 <syntax>MaxMemFree <var>kB-sayısı</var></syntax>
449 <default>MaxMemFree 0</default>
450 <contextlist><context>server config</context></contextlist>
451 <modulelist><module>beos</module><module>leader</module>
452 <module>mpm_netware</module><module>prefork</module>
453 <module>threadpool</module><module>worker</module><module>mpm_winnt</module></modulelist>
456 <p><directive>MaxMemFree</directive> yönergesi, <code>free()</code>
457 çağrılmaksızın ana bellek ayırıcının ayırmasına izin verilen azami
458 bellek miktarını kB cinsinden belirler. Bir değerle belirtilmediğinde
459 veya <code>0</code> değeriyle belirtildiğinde eşik sınırsız
465 <name>MaxRequestsPerChild</name>
466 <description>Tek bir çocuk sürecin ömrü boyunca işleme sokabileceği istek
467 sayısını sınırlamakta kullanılır.</description>
468 <syntax>MaxRequestsPerChild <var>sayı</var></syntax>
469 <default>MaxRequestsPerChild 10000</default>
470 <contextlist><context>server config</context></contextlist>
471 <modulelist><module>mpm_netware</module><module>mpmt_os2</module>
472 <module>mpm_winnt</module><module>prefork</module><module>worker</module>
476 <p><directive>MaxRequestsPerChild</directive> yönergesi, tek bir çocuk
477 sürecin işleme sokabileceği istek sayısını sınırlamakta kullanılır.
478 <directive>MaxRequestsPerChild</directive> istekten sonra çocuk süreç
479 ölür. Eğer <directive>MaxRequestsPerChild</directive> için
480 <code>0</code> belirtilmişse sürecin ömrü sonsuz olacaktır.</p>
482 <note><title>Sıfırdan farklı öntanımlı değerler</title>
483 <p><module>mpm_netware</module> ve <module>mpm_winnt</module> için
484 öntanımlı değer <code>0</code>’dır.</p>
487 <p><directive>MaxRequestsPerChild</directive> için sıfırdan farklı bir
488 değer belirtilmesi sürecin kullanacağı bellek miktarını sınırlamak suretiyle olası bellek sızıntılarını engeller.</p>
490 <note><title>Ek Bilgi</title>
491 <p><directive module="core">KeepAlive</directive> isteklerinde sadece
492 ilk istek bu sınıra uygun sayılır. Etkisi ise, davranışın çocuk süreç
493 başına <em>bağlantı</em> sayısının sınırlanması şeklinde
500 <name>MaxSpareThreads</name>
501 <description>Boştaki azami evre sayısını belirler</description>
502 <syntax>MaxSpareThreads <var>number</var></syntax>
503 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
504 <contextlist><context>server config</context></contextlist>
505 <modulelist><module>mpm_netware</module><module>mpmt_os2</module>
506 <module>worker</module></modulelist>
509 <p>Boştaki azami evre sayısı. Her MPM bu yönerge karşısında farklı
512 <p><module>worker</module> için <code>MaxSpareThreads 250</code>
513 öntanımlıdır. Bu MPM boştaki evreleri sunucu genelinde izler. Eğer
514 sunucuda çok fazla boşta evre varsa, sunucu boştaki evrelerin sayısı bu
515 sınırın altına inene kadar çocuk süreçleri öldürür.</p>
517 <p><module>mpm_netware</module> için <code>MaxSpareThreads 100</code>
518 öntanımlıdır. Bu MPM tek bir süreç olarak çalıştığından boştaki evre
519 sayısı aynı zamanda sunucu genelinde boştaki evre sayısıdır.</p>
521 <p><module>mpmt_os2</module> modülü <module>mpm_netware</module> modülü
522 gibi çalışır. <module>mpmt_os2</module> için öntanımlı değer
523 <code>10</code>'dur.</p>
525 <note><title>Kısıtlamalar</title>
526 <p><directive>MaxSpareThreads</directive> için değer aralığı sınırlıdır.
527 Apache belirtilen değeri aşağıdaki kurallara uygun olarak
528 kendiliğinden düzeltecektir:</p>
530 <li><module>mpm_netware</module> modülü, değerin <directive
531 module="mpm_common">MinSpareThreads</directive> değerinden küçük
532 olmasını gerektirir.</li>
534 <li><module>worker</module> için değer, <directive
535 module="mpm_common">MinSpareThreads</directive>
536 ve <directive module="mpm_common">ThreadsPerChild</directive>
537 toplamına eşit veya büyük olmak zorundadır.</li>
541 <seealso><directive module="mpm_common">MinSpareThreads</directive></seealso>
542 <seealso><directive module="mpm_common">StartServers</directive></seealso>
546 <name>MinSpareThreads</name>
547 <description>İsteklerin ani artışında devreye girecek boştaki evrelerin asgari
548 sayısını belirler.</description>
549 <syntax>MinSpareThreads <var>sayı</var></syntax>
550 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
551 <contextlist><context>server config</context></contextlist>
552 <modulelist><module>beos</module><module>leader</module>
553 <module>mpm_netware</module><module>mpmt_os2</module>
554 <module>worker</module></modulelist>
557 <p>İsteklerin ani artışında devreye girecek boştaki evrelerin asgari
558 sayısı. Her MPM bu yönerge karşısında farklı davranır.</p>
560 <p><module>worker</module> modülü için <code>MinSpareThreads
561 75</code> öntanımlıdır ve bu modül boştaki evreleri sunucu genelinde
562 izler. Eğer sunucuda boştaki evre sayısı yetersizse, sunucu, boştaki
563 evrelerin sayısı bu sınırın üstüne çıkana kadar çocuk süreç
566 <p><module>mpm_netware</module> için <code>MinSpareThreads 10</code>
567 öntanımlıdır ve tek süreç kendisi olduğundan izleme sunucu genelinde
570 <p><module>mpmt_os2</module> modülü <module>mpm_netware</module> modülü
571 gibi çalışır. <module>mpmt_os2</module> için öntanımlı değer
572 <code>5</code>'tir.</p>
575 <seealso><directive module="mpm_common">MaxSpareThreads</directive></seealso>
576 <seealso><directive module="mpm_common">StartServers</directive></seealso>
580 <name>ScoreBoardFile</name>
581 <description>Çocuk süreçler için eşgüdüm verisini saklamakta kullanılan
582 dosyanın yerini belirler.</description>
583 <syntax>ScoreBoardFile <var>dosya-yolu</var></syntax>
584 <default>ScoreBoardFile logs/apache_status</default>
585 <contextlist><context>server config</context></contextlist>
586 <modulelist><module>mpm_winnt</module><module>prefork</module>
587 <module>worker</module></modulelist>
590 <p>Apache ana ve çocuk süreçler arasında iletişim için bir çetele tutar.
591 Bazı mimariler bu iletişimi kolaylaştırmak için bir dosya gerektirir.
592 Eğer yönerge belirtilmezse Apache çeteleyi önce tamamen bellekte
593 oluşturmayı dener (anonim paylaşımlı bellek kullanarak); bunda başarılı
594 olamazsa dosyayı diskte oluşturmaya çalışacaktır (paylaşımlı belleğe
595 eşlemli dosya kullanarak). Bu yönergenin belirtilmesi Apache sunucusunun
596 dosyayı daima diskte oluşturmasına sebep olur.</p>
598 <example><title>Örnek</title>
599 ScoreBoardFile /var/run/apache_status
602 <p>Paylaşımlı belleğe eşlemli dosya, çeteleye doğrudan erişmesi gereken
603 üçüncü parti uygulamalar için yararlıdır.</p>
605 <p>Eğer <directive>ScoreBoardFile</directive> yönergesi ile bir dosya
606 belirtecekseniz, dosyayı bir RAM diske yerleştirerek hız artışı
607 sağlayabilirsiniz. Fakat, günlük dosyası yerleştirme ve <a
608 href="../misc/security_tips.html">güvenlik</a> ile ilgili uyarılara
609 benzer uyarılara karşı dikkatli olunuz.</p>
611 <seealso><a href="../stopping.html">Sunucuyu Durdurma ve Yeniden Başlatma</a> </seealso>
615 <name>ReceiveBufferSize</name>
616 <description>TCP alım tamponu boyu</description>
617 <syntax>ReceiveBufferSize <var>bayt-sayısı</var></syntax>
618 <default>ReceiveBufferSize 0</default>
619 <contextlist><context>server config</context></contextlist>
620 <modulelist><module>mpm_netware</module><module>mpm_winnt</module>
621 <module>mpmt_os2</module><module>prefork</module><module>worker</module>
625 <p>Sunucu TCP alım tamponu boyunu <var>bayt-sayısı</var> ile belirtilen
626 bayta ayarlayacaktır.</p>
628 <p><code>0</code> değeri atarsanız sunucu işletim sistemi öntanımlısını
634 <name>SendBufferSize</name>
635 <description>TCP tamponu boyu</description>
636 <syntax>SendBufferSize <var>bayt-sayısı</var></syntax>
637 <default>SendBufferSize 0</default>
638 <contextlist><context>server config</context></contextlist>
639 <modulelist><module>beos</module><module>leader</module>
640 <module>mpm_netware</module><module>mpm_winnt</module>
641 <module>mpmt_os2</module><module>prefork</module><module>worker</module>
645 <p>Sunucu TCP gönderim tamponu boyunu <var>bayt-sayısı</var> ile
646 belirtilen bayta ayarlayacaktır. Yüksek hızlı yüksek yataklık süresi
647 için standart işletim sistemi öntanımlılarını arttırmak çok yararlıdır
648 (örneğin, kıtalar arası hızlı borularda olduğu gibi 100 ms
651 <p><code>0</code> değeri atarsanız sunucu işletim sistemi öntanımlısını
657 <name>ServerLimit</name>
658 <description>Ayarlanabilir süreç sayısının üst sınırını belirler.</description>
659 <syntax>ServerLimit <var>sayı</var></syntax>
660 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
661 <contextlist><context>server config</context></contextlist>
662 <modulelist><module>prefork</module><module>worker</module>
666 <p><module>prefork</module> modülü söz konusu olduğunda bu yönerge, Apache
667 sürecinin ömrü boyunca <directive
668 module="mpm_common">MaxClients</directive> yönergesine atanabilecek
669 azami değeri belirler. <module>worker</module> modülü sözkonusu
670 olduğunda ise, Apache sürecinin ömrü boyunca <directive
671 module="mpm_common">MaxClients</directive> yönergesine atanabilecek
672 azami değeri <directive module="mpm_common">ThreadLimit</directive> ile
673 birlikte belirler. Bu yönergeyi bir yeniden başlatma sırasında
674 değiştirirseniz bu değişiklik yok sayılır fakat <directive
675 module="mpm_common">MaxClients</directive> değişiklikleri dikkate
678 <p>Bu yönergenin kullanılması özel bir dikkat gerektirir. Eğer
679 <directive>ServerLimit</directive> gereğinden yüksek bir değere
680 ayarlanırsa, gereksiz yere paylaşımlı bellek ayrılmış olur. Eğer
681 <directive>ServerLimit</directive> ve <directive
682 module="mpm_common">MaxClients</directive> değerleri sistemin
683 işleyebileceğinden daha yüksek değerlere ayarlanırsa Apache
684 başlayamayacağı gibi sistemi kararsız hale de getirebilir.</p>
686 <p>Bu yönergeyi <module>prefork</module> modülü ile sadece <directive
687 module="mpm_common">MaxClients</directive> yönergesine 256’dan
688 (öntanımlı) daha büyük bir değer atayacaksanız kullanınız. Bu yönergeye
689 <directive module="mpm_common">MaxClients</directive> için atamak
690 istediğiniz değerden fazlasını atamayınız.</p>
692 <p><module>worker</module> modülü söz konusu olduğunda bu yönergeyi
693 <directive module="mpm_common">MaxClients</directive> ve
694 <directive module="mpm_common">ThreadsPerChild</directive> ayarları 16
695 sunucu sürecinden (16 öntanımlıdır) fazlasını gerektiriyorsa
696 ayarlayınız. Bu yönergeye <directive module="mpm_common">MaxClients
697 </directive> ve <directive
698 module="mpm_common">ThreadsPerChild</directive> için gerekli gördüğünüz
699 sunucu süreci sayısından fazlasını atamayınız.</p>
701 <note><title>Ek Bilgi</title>
702 <p>Sunucu içinde derlenmiş olarak <code>ServerLimit 20000</code>
703 şeklinde bir zorlayıcı sınır vardır (<module>prefork</module> için
704 200000’dir). Bu önlem, yazım hatalarının istenmeyen sonuçlara yol
705 açmasını engellemek için düşünülmüştür.</p>
708 <seealso><a href="../stopping.html">Sunucuyu Durdurma ve Yeniden Başlatma</a> </seealso>
712 <name>StartServers</name>
713 <description>Sunucunun başlatılması sırasında oluşturulan çocuk süreçlerin
714 sayısını belirler.</description>
715 <syntax>StartServers <var>sayı</var></syntax>
716 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
717 <contextlist><context>server config</context></contextlist>
718 <modulelist><module>mpmt_os2</module><module>prefork</module>
719 <module>worker</module></modulelist>
722 <p><directive>StartServers</directive> yönergesi, sunucunun başlatılması
723 sırasında oluşturulan çocuk süreçlerin sayısını belirler. Süreç sayısı
724 normal olarak yüke bağlı olarak değişse de bu değerin ayarlanmasını
725 gerektirecek küçük bir sebep vardır.</p>
727 <p>Öntanımlı değer MPM’den MPM’e fark eder. Öntanımlı değer
728 <module>worker</module> için <code>3</code> iken
729 <module>prefork</module> için <code>5</code>,
730 <module>mpmt_os2</module> için <code>2</code>'dir.</p>
735 <name>StartThreads</name>
736 <description>Sunucunun başlatılması sırasında oluşturulan evrelerin sayısını
737 belirler.</description>
738 <syntax>StartThreads <var>sayı</var></syntax>
739 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
740 <contextlist><context>server config</context></contextlist>
741 <modulelist><module>mpm_netware</module></modulelist>
744 <p><directive>StartThreads</directive> yönergesi, sunucunun başlatılması
745 sırasında oluşturulan evrelerin sayısını belirler. Evre sayısı normal
746 olarak yüke bağlı olarak değişse de bu değerin ayarlanmasını
747 gerektirecek küçük bir sebep vardır.</p>
749 <p><module>mpm_netware</module> için <code>StartThreads 50</code>
750 öntanımlı olup, sadece tek bir süreç olduğundan, sunucunun başlatılması
751 sırasında oluşturulan evrelerin toplam sayısı <code>50</code>’dir.</p>
756 <name>ThreadLimit</name>
757 <description>Çocuk süreç başına ayarlanabilir evre sayısının üst sınırını
758 belirler.</description>
759 <syntax>ThreadLimit <var>sayı</var></syntax>
760 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
761 <contextlist><context>server config</context></contextlist>
762 <modulelist><module>mpm_winnt</module><module>worker</module>
764 <compatibility><module>mpm_winnt</module> için Apache 2.0.41 ve sonrasında mevcuttur.</compatibility>
767 <p>Bu yönerge, Apache sürecinin ömrü boyunca <directive
768 module="mpm_common">ThreadsPerChild</directive> yönergesine
769 atanabilecek azami değeri belirler. Bu yönergeyi bir yeniden başlatma
770 sırasında değiştirirseniz bu değişiklik yok sayılır fakat <directive
771 module="mpm_common">ThreadsPerChild</directive> değişiklikleri dikkate
774 <p>Bu yönergenin kullanılması özel bir dikkat gerektirir. Eğer
775 <directive>ThreadLimit</directive> değeri <directive
776 module="mpm_common">ThreadsPerChild</directive> değerinden yüksek bir
777 değere ayarlanırsa, gereksiz yere paylaşımlı bellek ayrılmış olur. Eğer
778 <directive>ThreadLimit</directive> ve <directive
779 module="mpm_common">ThreadsPerChild</directive> değerleri sistemin
780 işleyebileceğinden daha yüksek değerlere ayarlanırsa Apache
781 başlayamayacağı gibi sistemi kararsız hale de getirebilir. Bu yönergeye
782 Apache sunucusunun çalışması için öngörülmüş en büyük değerden daha
783 yükseğini atamayınız.</p>
785 <p><directive>ThreadLimit</directive> yönergesinin öntanımlı değeri
786 <module>mpm_winnt</module> için <code>1920</code>, diğerleri için
787 <code>64</code>’tür.</p>
789 <note><title>Ek Bilgi</title>
790 <p>Sunucu içinde derlenmiş olarak <code>ThreadLimit 20000</code>
791 şeklinde bir zorlayıcı sınır vardır (<module>mpm_winnt</module> için
792 15000’dir). Bu önlem, yazım hatalarının istenmeyen sonuçlara yol
793 açmasını engellemek için düşünülmüştür.</p>
799 <name>ThreadsPerChild</name>
800 <description>Her çocuk süreç tarafından oluşturulan evrelerin sayısını
801 belirler.</description>
802 <syntax>ThreadsPerChild <var>sayı</var></syntax>
803 <default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
804 <contextlist><context>server config</context></contextlist>
805 <modulelist><module>mpm_winnt</module><module>worker</module></modulelist>
808 <p>Bu yönerge, her çocuk süreç tarafından oluşturulan evrelerin sayısını
809 belirler. Çocuk süreçler bu evreleri başlatıldıklarında oluştururlar ve
810 bundan daha fazlasını asla oluşturmazlar. <module>mpm_winnt</module>
811 gibi sadece bir çocuk sürecin bulunduğu bir MPM kullanıyorsanız, bu
812 sayı sunucunun tüm yükünü kaldırabilecek kadar büyük olmalıdır.
813 <module>worker</module> gibi çok çocuk süreçli bir MPM kullanıyorsanız,
814 <em>toplam</em> evre sayısı sunucunun tüm yükünü kaldırabilecek kadar
817 <p><directive>ThreadsPerChild</directive> için öntanımlı değer
818 <module>mpm_winnt</module> kullanıldığında <code>64</code> diğerleri
819 için <code>25</code>’tir.</p>
824 <name>ThreadStackSize</name>
825 <description>İstemci bağlantılarını elde eden evreler tarafından kullanılan
826 yığıtın bayt cinsinden uzunluğunu belirler.</description>
827 <syntax>ThreadStackSize <var>boyut</var></syntax>
828 <default>NetWare üzerinde 65536; diğer işletim sistemlerinde
830 <contextlist><context>server config</context></contextlist>
831 <modulelist><module>mpm_netware</module><module>mpm_winnt</module>
832 <module>worker</module></modulelist>
833 <compatibility>Apache 2.1 ve sonrasında mevcuttur.</compatibility>
836 <p><directive>ThreadStackSize</directive> yönergesi, istemci
837 bağlantılarını elde eden evreler ve bu bağlantıları işlemekte yardımcı
838 olan modül çağrıları tarafından kullanılan yığıtın bayt cinsinden
839 uzunluğunu belirler. Çoğu durumda işletim sistemi yığıtı uygun bir
840 boyuta ayarlar, fakat yine de ayarlanmasını gerektirecek bazı durumlar
844 <li>HP-UX gibi görece küçük yığıt boyuna sahip platformlarda, Apache,
845 görece büyük yığıt alanı kullanan bazı üçüncü parti modüller yüzünden
846 çökebilir. Bu modüller öntanımlı yığıt boyu daha büyük olan diğer
847 platformlarda sorunsuz çalışabilir. Bu tür çökmeler
848 <directive>ThreadStackSize</directive> yönergesine daha büyük yığıt
849 boyu atanarak çözümlenir. Böyle bir ayarlamayı sadece üçüncü parti
850 modülün üreticisi bunun gerekliliğini belirtmişse veya Apache’nin
851 evre yığıt boyutunun küçüklüğünden dolayı çöktüğü teşhis edildiği
852 takdirde yapınız.</li>
854 <li>Öntanımlı yığıt boyu Apache sunucusu için gerekenden belirgin
855 şekilde büyük bazı platformalarda, eğer
856 <directive>ThreadStackSize</directive> yönergesi ile bu boyuttan daha
857 düşük bir değer atanmışsa çocuk süreç başına evre sayısının yüksek
858 olduğu durumlarda bu yığıt yetmeyebilir. Böyle bir ayarlama sadece
859 sunucunun öldüresiye denendiği dolayısıyla yığıt boyutlarının aşırı
860 zorlandığı deneme ortamlarında yapılmalıdır. Sunucu yapılandırmasında
861 yapılan bir değişiklik mevcut <directive>ThreadStackSize</directive>
862 ayarını geçersiz hale getirebilir.</li>