mirror of
https://github.com/apache/httpd.git
synced 2025-07-10 08:01:00 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1752981 13f79535-47bb-0310-9956-ffa450edef68
799 lines
38 KiB
XML
799 lines
38 KiB
XML
<?xml version="1.0"?>
|
||
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
|
||
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
|
||
<!-- English Revision: 1308409:1752824 (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.
|
||
-->
|
||
|
||
<modulesynopsis metafile="mpm_common.xml.meta">
|
||
|
||
<name>mpm_common</name>
|
||
<description>Birden fazla Çok Süreçlilik Modülü (MPM) tarafından gerçeklenmiş
|
||
yönergeler bütünü.</description>
|
||
<status>MPM</status>
|
||
|
||
<directivesynopsis>
|
||
<name>CoreDumpDirectory</name>
|
||
<description><code>core</code> dosyasını dökümlemek üzere Apache HTTP
|
||
Sunucusunun geçmeye çalışacağı dizin.</description>
|
||
<syntax>CoreDumpDirectory <var>dizin</var></syntax>
|
||
<default>Öntanımlı değer için aşağıdaki açıklamaya bakınız</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>prefork</module>
|
||
<module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>Bu yönerge <code>core</code> dosyasını dökümlemek üzere Apache httpd’nin
|
||
geçmeye çalışacağı dizini belirler. Eğer işletim sisteminiz, çöken bir
|
||
sürecin olması durumunda <code>core</code> dosyasını çöken sürecin
|
||
çalışma dizinine yazacak şekilde yapılandırılmışsa,
|
||
<directive>CoreDumpDirectory</directive> yönergesinin değeri olarak,
|
||
öntanımlı olan ve sunucuyu çalıştıran kullanıcı tarafından yazılamayan
|
||
<directive module="core">ServerRoot</directive> dizini yerine başka bir
|
||
çalışma dizini belirtmek gerekir.</p>
|
||
|
||
<p>Hata ayıklamak amacıyla bir <code>core</code> dosyası dökümlemek
|
||
isterseniz farklı bir yer belirtmek için bu yönergeyi
|
||
kullanabilirsiniz. Eğer işletim sisteminiz çöken bir sürecin olması
|
||
durumunda <code>core</code> dosyasını çöken sürecin çalışma dizinine
|
||
yazacak şekilde yapılandırılmamışsa, bu yönergenin bir etkisi olmaz.</p>
|
||
|
||
<note><title>Linux üzerinde <code>core</code> dökümlemek</title>
|
||
<p>Apache httpd root olarak başlatılıp başka bir kullanıcıya geçilirse
|
||
Linux çekirdeği, süreç tarafından yazılabilir olsa bile
|
||
<code>core</code> dökümlemeyi <em>iptal eder</em>. Eğer
|
||
<directive>CoreDumpDirectory</directive> yönergesi ile açıkça bir
|
||
dizin belirtirseniz, Apache httpd (2.0.46 ve sonraki sürümleri), Linux
|
||
2.4 ve sonrasında <code>core</code> dökümlemeyi yeniden
|
||
etkinleştirecektir.</p>
|
||
</note>
|
||
|
||
<note>
|
||
<title>BSD üzerinde <code>core</code> dökümlemek</title>
|
||
<p>BSD sistemlerinde (FreeBSD gibi) suid bitli çalıştırılabilirlerin
|
||
<code>core</code> dökümlemesini etkin kılmak için
|
||
<code>kern.sugid_coredump</code> değişkenine 1 değerini atayın.
|
||
</p>
|
||
</note>
|
||
|
||
<note><title>Özel sinyaller</title>
|
||
<p><directive>CoreDumpDirectory</directive> işlemi sadece belli
|
||
sinyaller için gerçekleşir: SIGFPE, SIGILL, SIGABORT, SIGSEGV ve
|
||
SIGBUS.</p>
|
||
<p>Bazı işletim sistemlerinde SIGQUIT sinyali de bir <code>core</code>
|
||
dosyası dökümler ancak bunu <directive>CoreDumpDirectory</directive>
|
||
veya <directive>EnableExceptionHook</directive> işlemi üzerinden
|
||
yapmaz, dolayısıyla <code>core</code> dosyasının yeri tamamen işletim
|
||
sisteminin belirlediği yer olur.</p>
|
||
</note>
|
||
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>EnableExceptionHook</name>
|
||
<description>Bir çöküş sonrası olağandışılık eylemcilerini çalıştıracak
|
||
kancayı etkin kılar.</description>
|
||
<syntax>EnableExceptionHook On|Off</syntax>
|
||
<default>EnableExceptionHook Off</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>prefork</module>
|
||
<module>worker</module></modulelist>
|
||
<compatibility>Sürüm 2.0.49 ve sonrasında mevcuttur</compatibility>
|
||
|
||
<usage>
|
||
<p>Güvenlik sebebiyle bu yönerge sadece Apache
|
||
<code>--enable-exception-hook</code> seçeneği ile yapılandırılmışsa
|
||
kullanılabilir olacaktır. Bu, harici modüllerin eklenmesine ve bir çocuk
|
||
sürecin çöküşü sonrası bir şeyler yapmaya izin veren bir kancayı etkin
|
||
kılar.</p>
|
||
|
||
<p>Bu kancayı kullanan iki modül (<code>mod_whatkilledus</code> ve
|
||
<code>mod_backtrace</code>) zaten vardır. bunlar hakkında daha fazla bilgi
|
||
edinmek için Jeff Trawick'in <a
|
||
href="http://www.apache.org/~trawick/exception_hook.html"
|
||
>EnableExceptionHook site</a>sine bakabilirsiniz.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>GracefulShutdownTimeout</name>
|
||
<description>Sunucunun nazikçe kapatılmasının ardından ana süreç çıkana kadar
|
||
geçecek süre için bir zaman aşımı belirler.</description>
|
||
<syntax>GracefulShutDownTimeout <var>saniye</var></syntax>
|
||
<default>GracefulShutDownTimeout 0</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>prefork</module><module>worker</module>
|
||
<module>event</module></modulelist>
|
||
<compatibility>Sürüm 2.2 ve sonrasında mevcuttur</compatibility>
|
||
|
||
<usage>
|
||
<p><directive>GracefulShutdownTimeout</directive> yönergesi, sunucuya
|
||
"nazikçe dur" sinyali gönderildikten sonra mevcut bağlantılara hizmet
|
||
sunmaya daha kaç saniye devam edebileceğini belirtir.</p>
|
||
|
||
<p>Bu değerin <code>0</code> olarak belirtilmesi, sunucunun bekleyen bütün
|
||
isteklere hizmet sunumu tamamlanıncaya kadar (gerekirse sonsuza kadar)
|
||
bekleyebileceği anlamına gelir.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>PidFile</name>
|
||
<description>Ana sürecin süreç kimliğinin (PID) kaydedileceği dosyayı belirler.</description>
|
||
<syntax>PidFile <var>dosya</var></syntax>
|
||
<default>PidFile logs/httpd.pid</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_winnt</module>
|
||
<module>mpmt_os2</module><module>prefork</module><module>worker</module>
|
||
</modulelist>
|
||
|
||
<usage>
|
||
<p><directive>PidFile</directive> yönergesi, sunucunun artalan sürecinin
|
||
süreç kimliğinin kaydedileceği dosyayı belirler. Dosya ismi mutlak dosya
|
||
yoluyla belirtilmemişse dosya yolunun <directive
|
||
module="core">ServerRoot</directive> dizinine göre belirtildiği kabul
|
||
edilir.</p>
|
||
|
||
<example><title>Örnek</title>
|
||
PidFile /var/run/apache.pid
|
||
</example>
|
||
|
||
<p>Sunucuya sinyal gönderebilmek çoğunlukla işe yarar. Böylece <directive
|
||
module="core">ErrorLog</directive> ve <directive
|
||
module="mod_log_config">TransferLog</directive> dosyaları kapatılıp
|
||
yeniden açılır ve yapılandırma dosyaları yeniden okunur. Bu,
|
||
<directive>PidFile</directive> dosyasında belirtilen süreç kimliğine bir
|
||
SIGHUP (kill -1) sinyali gönderilerek yapılır.</p>
|
||
|
||
<p>Günlük dosyasının yeri ve <a
|
||
href="../misc/security_tips.html#serverroot">güvenlik</a> ile ilgili
|
||
uyarılar <directive>PidFile</directive> dosyası içinde sözkonusu
|
||
olabilir.</p>
|
||
|
||
<note><title>Ek Bilgi</title>
|
||
<p>Apache HTTP Sunucusunu (yeniden) başlatırken veya durdururken sadece
|
||
<program>apachectl</program> betiğini kullanmanız önerilir.</p>
|
||
</note>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>Listen</name>
|
||
<description>Sunucunun dinleyeceği IP adresini ve portu belirler.</description>
|
||
<syntax>Listen [<var>IP-adresi</var>:]<var>port-numarası</var>
|
||
[<var>protokol</var>]</syntax>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>mpm_netware</module><module>mpm_winnt</module>
|
||
<module>mpmt_os2</module><module>perchild</module>
|
||
<module>prefork</module><module>worker</module><module>event</module>
|
||
</modulelist>
|
||
<compatibility>Apache HTTP Sunucusu 2.0’dan beri gerekli yönergelerden
|
||
biridir.<br/><var>protokol</var> değiştirgesi 2.1.5 sürümünde
|
||
eklenmiştir.</compatibility>
|
||
|
||
<usage>
|
||
<p><directive>Listen</directive> yönergesi Apache httpd’yi sadece belli IP
|
||
adreslerini ve portlarını dinlemeye sevkeder.
|
||
<directive>Listen</directive> artık belirtilmesi zorunlu yönergelerden
|
||
biridir. Yapılandırma dosyasında bulunmadığı takdirde sunucu
|
||
başlatılırken başarısız olacaktır. Bu Apache HTTP Sunucusunun önceki
|
||
sürümünde böyle değildi.</p>
|
||
|
||
<p><directive>Listen</directive> yönergesi Apache httpd’ye, sadece belli
|
||
portlardan veya IP adresi ve port çiftlerinden gelen istekleri kabul
|
||
etmesini söyler. Eğer sadece port numarası belirtilmişse sunucu
|
||
belirtilen portu bütün ağ arabirimlerinde dinleyecektir. Eğer portla
|
||
birlikte bir IP adresi de belirtilmişse, sunucu belirtilen portu sadece
|
||
belirtilen arabirimden dinleyecektir.</p>
|
||
|
||
<p>Çok sayıda IP adresi ve port belirtmek için çok sayıda
|
||
<directive>Listen</directive> yönergesi kullanılabilir. Sunucu bu
|
||
durumda belirtilen bütün IP adreslerinden ve portlardan gelecek
|
||
isteklere yanıt verecektir.</p>
|
||
|
||
<p>Örneğin sunucunun hem port 80 hem de port 8000’den istek kabul etmesini
|
||
istiyorsanız bunu şöyle belirtebilirsiniz:</p>
|
||
|
||
<example>
|
||
Listen 80<br />
|
||
Listen 8000
|
||
</example>
|
||
|
||
<p>Sunucunun belirtilen iki ağ arabiriminden ve port numarasından gelen
|
||
bağlantıları kabul etmesi için şu yapılandırmayı kullanabilirsiniz:</p>
|
||
|
||
<example>
|
||
Listen 192.170.2.1:80<br />
|
||
Listen 192.170.2.5:8000
|
||
</example>
|
||
|
||
<p>IPv6 adresleri belirtilirken örnekteki gibi köşeli ayraçlar arasına
|
||
alınmalıdır:</p>
|
||
|
||
<example>
|
||
Listen [2001:db8::a00:20ff:fea7:ccea]:80
|
||
</example>
|
||
|
||
<p>İsteğe bağlı <var>protocol</var> argümanı çoğu yapılandırmada gerekli
|
||
değildir. Belirtilmediği takdirde. port 443 için <code>https</code> ve
|
||
tüm diğer portlar için <code>http</code> öntanımlıdır. Protokol, isteği
|
||
hangi modülün elde edeceğinin ve <directive
|
||
module="core">AcceptFilter</directive> yönergesi ile protokole özgü
|
||
hangi en iyilemelerin uygulanacağının saptanmasında kullanılır.</p>
|
||
|
||
<p>Protokol belirtme ihtiyacını sadece standartdışı portlar
|
||
çalıştırıyorsanız duyarsınız. Örneğin, port 8443 üzerinde bir
|
||
<code>https</code> sitesi çalıştırmak istiyorsanız bunu şöyle
|
||
belirtebilirsiniz:</p>
|
||
|
||
<example>
|
||
Listen 192.170.2.1:8443 https
|
||
</example>
|
||
|
||
<note><title>Hata durumu</title>
|
||
Aynı IP adresi ve portun çok sayıda <directive>Listen</directive>
|
||
yönergesinde belirtilmesi bir "adres kullanımda" (<code>Address already
|
||
in use</code>) hatasına yol açar.
|
||
</note>
|
||
|
||
</usage>
|
||
<seealso><a href="../dns-caveats.html">DNS ve Apache ile ilgili Konular</a> </seealso>
|
||
<seealso><a href="../bind.html">Apache HTTP Sunucusunun Kullandığı Adreslerin
|
||
ve Portların Ayarlanması</a></seealso>
|
||
<seealso><a href="http://wiki.apache.org/httpd/CouldNotBindToAddress"
|
||
><code>Address already in use</code> hata iletisinin ve diğer sebeplerin
|
||
açıklaması</a></seealso>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>ListenBackLog</name>
|
||
<description>Bekleyen bağlantılar kuyruğunun azami uzunluğunu
|
||
belirler</description>
|
||
<syntax>ListenBacklog <var>kuyruk-uzunluğu</var></syntax>
|
||
<default>ListenBacklog 511</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>mpm_winnt</module><module>mpmt_os2</module>
|
||
<module>prefork</module><module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>Bekleyen bağlantılar kuyruğunun azami uzunluğu. Genellikle bu ayar ne
|
||
gerekir ne de istenir. Ancak bazı sistemlerde TCP SYN yüklenme
|
||
saldırılarına karşı bu değerin arttırılması gerekebilir.
|
||
<var>kuyruk-uzunluğu</var> parametresi için <code>listen(2)</code>
|
||
işlevinin açıklamasına bakınız.</p>
|
||
|
||
<p>Bu değer çoğunlukla işletim sistemi tarafından daha küçük bir sayıyla
|
||
sınırlanır. Bu, işletim sistemine bağlı olarak değişiklik gösterir.
|
||
Ayrıca, çoğu işletim sisteminin <var>kuyruk-uzunluğu</var> parametresi
|
||
ile ne belirttiğinize bakmaksızın kendisi için atanmış değeri (fakat
|
||
normal olarak daha büyüğünü) kullanacağına dikkat ediniz.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>MaxRequestWorkers</name>
|
||
<description>Aynı anda işleme sokulacak azami bağlantı sayısı</description>
|
||
<syntax>MaxRequestWorkers <var>sayı</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>prefork</module>
|
||
<module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p><directive>MaxRequestWorkers</directive> yönergesi aynı anda işleme
|
||
sokulacak bağlantı sayısını sınırlamak için kullanılır. <directive
|
||
>MaxRequestWorkers</directive> bağlantı isteğinden fazlası geldiği
|
||
takdirde bu istekler normal olarak kuyruğa alınıp bekletilir. Kuyrukta
|
||
bekletilecek isteklerin azami sayısı ise <directive module="mpm_common"
|
||
>ListenBacklog</directive> yönergesi ile belirlenir. İstek sunmakta olan
|
||
çocuk süreçlerden biri serbest kaldığında bekletilen bağlantılardan
|
||
birine hizmet sunulmaya başlanır.</p>
|
||
|
||
<p>Evreli olmayan sunucularda (<module>prefork</module> gibi)
|
||
<directive>MaxRequestWorkers</directive> yönergesi istekleri sunmak için
|
||
başlatılacak çocuk süreçlerin azami sayısını belirler. Öntanımlı değer
|
||
256 olup bu değeri arttırmak isterseniz <directive
|
||
module="mpm_common">ServerLimit</directive> değerini de
|
||
arttırmalısınız.</p>
|
||
|
||
<p>Çok evreli ve melez sunucularda (<module>event</module> veya
|
||
<module>worker</module> gibi) <directive>MaxRequestWorkers</directive>
|
||
yönergesi istemcilere hizmet verecek evre sayısını sınırlar. Öntanımlı
|
||
değer melez MPM’ler için 16'dır
|
||
(<directive module="mpm_common">ServerLimit</directive> ile <directive
|
||
module="mpm_common">ThreadsPerChild</directive> çarpılır: <code>16 x
|
||
25</code>). Bu bakımdan <directive>MaxRequestWorkers</directive> değerini
|
||
16 süreçten fazlasına ayarlamak için <directive module="mpm_common"
|
||
>ServerLimit</directive> değerini de arttırmalısınız.</p>
|
||
|
||
<p><directive>MaxRequestWorkers</directive> yerine 2.3.13 öncesinde
|
||
<directive>MaxClients</directive> kullanılırdı. Eski isim hala
|
||
desteklenmektedir.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>MaxMemFree</name>
|
||
<description><code>free()</code> çağrılmaksızın ana bellek ayırıcının
|
||
ayırmasına izin verilen azami bellek miktarını belirler.</description>
|
||
<syntax>MaxMemFree <var>kB-sayısı</var></syntax>
|
||
<default>MaxMemFree 2048</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>prefork</module><module>worker</module>
|
||
<module>mpm_winnt</module></modulelist>
|
||
|
||
<usage>
|
||
<p><directive>MaxMemFree</directive> yönergesi, <code>free()</code>
|
||
çağrılmaksızın her bellek ayırıcının ayırmasına izin verilen azami
|
||
bellek miktarını kB cinsinden belirler. Evreli MPM'lerde her evre kendi
|
||
ayırıcısına sahiptir. <code>0</code> değeri belirtildiğinde eşik sınırsız
|
||
olacaktır.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>MaxConnectionsPerChild</name>
|
||
<description>Tek bir çocuk sürecin ömrü boyunca işleme sokabileceği istek
|
||
sayısını sınırlamakta kullanılır.</description>
|
||
<syntax>MaxConnectionsPerChild <var>sayı</var></syntax>
|
||
<default>MaxConnectionsPerChild 0</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>mpmt_os2</module><module>mpm_winnt</module>
|
||
<module>prefork</module><module>worker</module>
|
||
</modulelist>
|
||
<compatibility>Apache HTTP Sunucusunun 2.3.9 ve sonraki sürümlerinde
|
||
kullanılabilmektedir. Eski isim <code>MaxRequestsPerChild</code> hala
|
||
desteklenmektedir.</compatibility>
|
||
|
||
<usage>
|
||
<p><directive>MaxConnectionsPerChild</directive> yönergesi, tek bir çocuk
|
||
sürecin işleme sokabileceği istek sayısını sınırlamakta kullanılır.
|
||
<directive>MaxConnectionsPerChild</directive> istekten sonra çocuk süreç
|
||
ölür. Eğer <directive>MaxConnectionsPerChild</directive> için
|
||
<code>0</code> belirtilmişse sürecin ömrü sonsuz olacaktır.</p>
|
||
|
||
<p><directive>MaxConnectionsPerChild</directive> için sıfırdan farklı bir
|
||
değer belirtilmesi sürecin kullanacağı bellek miktarını sınırlamak
|
||
suretiyle olası bellek sızıntılarını engeller.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>MaxSpareThreads</name>
|
||
<description>Boştaki azami evre sayısını belirler</description>
|
||
<syntax>MaxSpareThreads <var>number</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>mpmt_os2</module><module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>Boştaki azami evre sayısı. Her MPM bu yönerge karşısında farklı
|
||
davranır.</p>
|
||
|
||
<p><module>worker</module> için <code>MaxSpareThreads 250</code>
|
||
öntanımlıdır. Bu MPM boştaki evreleri sunucu genelinde izler. Eğer
|
||
sunucuda çok fazla boşta evre varsa, sunucu boştaki evrelerin sayısı bu
|
||
sınırın altına inene kadar çocuk süreçleri öldürür.</p>
|
||
|
||
<p><module>mpm_netware</module> için <code>MaxSpareThreads 100</code>
|
||
öntanımlıdır. Bu MPM tek bir süreç olarak çalıştığından boştaki evre
|
||
sayısı aynı zamanda sunucu genelinde boştaki evre sayısıdır.</p>
|
||
|
||
<p><module>mpmt_os2</module> modülü <module>mpm_netware</module> modülü
|
||
gibi çalışır. <module>mpmt_os2</module> için öntanımlı değer
|
||
<code>10</code>'dur.</p>
|
||
|
||
<note><title>Kısıtlamalar</title>
|
||
<p><directive>MaxSpareThreads</directive> için değer aralığı sınırlıdır.
|
||
Apache httpd belirtilen değeri aşağıdaki kurallara uygun olarak
|
||
kendiliğinden düzeltecektir:</p>
|
||
<ul>
|
||
<li><module>mpm_netware</module> modülü, değerin <directive
|
||
module="mpm_common">MinSpareThreads</directive> değerinden küçük
|
||
olmasını gerektirir.</li>
|
||
|
||
<li><module>worker</module> için değer, <directive
|
||
module="mpm_common">MinSpareThreads</directive>
|
||
ve <directive module="mpm_common">ThreadsPerChild</directive>
|
||
toplamına eşit veya büyük olmak zorundadır.</li>
|
||
</ul>
|
||
</note>
|
||
</usage>
|
||
<seealso><directive module="mpm_common">MinSpareThreads</directive></seealso>
|
||
<seealso><directive module="mpm_common">StartServers</directive></seealso>
|
||
<seealso><directive module="prefork">MaxSpareServers</directive></seealso>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>MinSpareThreads</name>
|
||
<description>İsteklerin ani artışında devreye girecek boştaki evrelerin asgari
|
||
sayısını belirler.</description>
|
||
<syntax>MinSpareThreads <var>sayı</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>mpmt_os2</module><module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>İsteklerin ani artışında devreye girecek boştaki evrelerin asgari
|
||
sayısı. Her MPM bu yönerge karşısında farklı davranır.</p>
|
||
|
||
<p><module>worker</module> modülü için <code>MinSpareThreads
|
||
75</code> öntanımlıdır ve bu modül boştaki evreleri sunucu genelinde
|
||
izler. Eğer sunucuda boştaki evre sayısı yetersizse, sunucu, boştaki
|
||
evrelerin sayısı bu sınırın üstüne çıkana kadar çocuk süreç
|
||
oluşturur.</p>
|
||
|
||
<p><module>mpm_netware</module> için <code>MinSpareThreads 10</code>
|
||
öntanımlıdır ve tek süreç kendisi olduğundan izleme sunucu genelinde
|
||
yapılır.</p>
|
||
|
||
<p><module>mpmt_os2</module> modülü <module>mpm_netware</module> modülü
|
||
gibi çalışır. <module>mpmt_os2</module> için öntanımlı değer
|
||
<code>5</code>'tir.</p>
|
||
|
||
</usage>
|
||
<seealso><directive module="mpm_common">MaxSpareThreads</directive></seealso>
|
||
<seealso><directive module="mpm_common">StartServers</directive></seealso>
|
||
<seealso><directive module="prefork">MinSpareServers</directive></seealso>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>ScoreBoardFile</name>
|
||
<description>Çocuk süreçler için eşgüdüm verisini saklamakta kullanılan
|
||
dosyanın yerini belirler.</description>
|
||
<syntax>ScoreBoardFile <var>dosya-yolu</var></syntax>
|
||
<default>ScoreBoardFile logs/apache_status</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_winnt</module>
|
||
<module>prefork</module><module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>Apache HTTP Sunucusu ana ve çocuk süreçler arasında iletişim için bir
|
||
çetele tutar.
|
||
Bazı mimariler bu iletişimi kolaylaştırmak için bir dosya gerektirir.
|
||
Eğer yönerge belirtilmezse Apache httpd çeteleyi önce tamamen bellekte
|
||
oluşturmayı dener (anonim paylaşımlı bellek kullanarak); bunda başarılı
|
||
olamazsa dosyayı diskte oluşturmaya çalışacaktır (paylaşımlı belleğe
|
||
eşlemli dosya kullanarak). Bu yönergenin belirtilmesi Apache httpd'nin
|
||
dosyayı daima diskte oluşturmasına sebep olur.</p>
|
||
|
||
<example><title>Örnek</title>
|
||
ScoreBoardFile /var/run/apache_status
|
||
</example>
|
||
|
||
<p>Paylaşımlı belleğe eşlemli dosya, çeteleye doğrudan erişmesi gereken
|
||
üçüncü parti uygulamalar için yararlıdır.</p>
|
||
|
||
<p>Eğer <directive>ScoreBoardFile</directive> yönergesi ile bir dosya
|
||
belirtecekseniz, dosyayı bir RAM diske yerleştirerek hız artışı
|
||
sağlayabilirsiniz. Fakat, günlük dosyası yerleştirme ve <a
|
||
href="../misc/security_tips.html">güvenlik</a> ile ilgili uyarılara
|
||
benzer uyarılara karşı dikkatli olunuz.</p>
|
||
</usage>
|
||
<seealso><a href="../stopping.html">Apache HTTP Sunucusunu Durdurma ve Yeniden
|
||
Başlatma</a> </seealso>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>ReceiveBufferSize</name>
|
||
<description>TCP alım tamponu boyu</description>
|
||
<syntax>ReceiveBufferSize <var>bayt-sayısı</var></syntax>
|
||
<default>ReceiveBufferSize 0</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>mpm_winnt</module><module>mpmt_os2</module><module>prefork</module>
|
||
<module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>Sunucunun TCP alım tamponu boyunu <var>bayt-sayısı</var> ile belirtilen
|
||
bayta ayarlar.</p>
|
||
|
||
<p><code>0</code> değeri atarsanız sunucu işletim sistemi öntanımlısını
|
||
kullanacaktır.</p>
|
||
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>SendBufferSize</name>
|
||
<description>TCP tamponu boyu</description>
|
||
<syntax>SendBufferSize <var>bayt-sayısı</var></syntax>
|
||
<default>SendBufferSize 0</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>mpm_winnt</module><module>mpmt_os2</module><module>prefork</module>
|
||
<module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>Sunucu TCP gönderim tamponu boyunu <var>bayt-sayısı</var> ile
|
||
belirtilen bayta ayarlayacaktır. Yüksek hızlı yüksek yataklık süreli
|
||
bağlantılarda işletim sisteminin öntanımlı değerini aşacak şekilde (örn,
|
||
kıtalararası hızlı hatlarda 100ms veya fazlası) ayarlamak çoğunlukla
|
||
kullanışlıdır.</p>
|
||
|
||
<p><code>0</code> değeri atarsanız sunucu işletim sistemi öntanımlısını
|
||
kullanacaktır.</p>
|
||
|
||
<p>İşletim sisteminizin ilaveten yapılandırılması, yüksek hız, yüksek
|
||
gecikme bağlantılarında daha yüksek başarım elde etmek için gerekli
|
||
olabilir.</p>
|
||
|
||
<note><p>Bazı işletim sistemlerinde, TCP davranışı, <directive
|
||
module="core">EnableSendfile</directive> yönergesine <code>Off</code>
|
||
değeri atanmadıkça görülemeyen, büyükçe bir
|
||
<directive>SendBufferSize</directive> değerinden kaynaklanarak değişir.
|
||
Bu etkileşim sadece duruk dosyalarda görülür.</p> </note>
|
||
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>ServerLimit</name>
|
||
<description>Ayarlanabilir süreç sayısının üst sınırını belirler.</description>
|
||
<syntax>ServerLimit <var>sayı</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>prefork</module>
|
||
<module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p><module>prefork</module> modülü söz konusu olduğunda bu yönerge, Apache
|
||
httpd sürecinin ömrü boyunca <directive module="mpm_common"
|
||
>MaxRequestWorkers</directive> yönergesine atanabilecek
|
||
azami değeri belirler. <module>worker</module> modülü sözkonusu
|
||
olduğunda ise, Apache httpd sürecinin ömrü boyunca <directive
|
||
module="mpm_common">MaxRequestWorkers</directive> yönergesine
|
||
atanabilecek azami değeri <directive module="mpm_common"
|
||
>ThreadLimit</directive> ile birlikte belirler. Bu yönergeyi bir yeniden
|
||
başlatma sırasında değiştirirseniz bu değişiklik yok sayılır fakat
|
||
<directive module="mpm_common">MaxRequestWorkers</directive>
|
||
değişiklikleri dikkate alınır.</p>
|
||
|
||
<p>Bu yönergenin kullanılması özel bir dikkat gerektirir. Eğer
|
||
<directive>ServerLimit</directive> gereğinden yüksek bir değere
|
||
ayarlanırsa, gereksiz yere paylaşımlı bellek ayrılmış olur. Eğer
|
||
<directive>ServerLimit</directive> ve <directive
|
||
module="mpm_common">MaxRequestWorkers</directive> değerleri sistemin
|
||
işleyebileceğinden daha yüksek değerlere ayarlanırsa Apache httpd
|
||
başlayamayacağı gibi sistemi kararsız hale de getirebilir.</p>
|
||
|
||
<p>Bu yönergeyi <module>prefork</module> modülü ile sadece <directive
|
||
module="mpm_common">MaxRequestWorkers</directive> yönergesine 256’dan
|
||
(öntanımlı) daha büyük bir değer atayacaksanız kullanınız. Bu yönergeye
|
||
<directive module="mpm_common">MaxRequestWorkers</directive> için atamak
|
||
istediğiniz değerden fazlasını atamayınız.</p>
|
||
|
||
<p><module>worker</module> modülü söz konusu olduğunda bu yönergeyi
|
||
<directive module="mpm_common">MaxRequestWorkers</directive> ve
|
||
<directive module="mpm_common">ThreadsPerChild</directive> ayarları 16
|
||
sunucu sürecinden (16 öntanımlıdır) fazlasını gerektiriyorsa
|
||
ayarlayınız. Bu yönergeye <directive module="mpm_common"
|
||
>MaxRequestWorkers</directive> ve <directive module="mpm_common"
|
||
>ThreadsPerChild</directive> için gerekli gördüğünüz sunucu süreci
|
||
sayısından fazlasını atamayınız.</p>
|
||
|
||
<note><title>Ek Bilgi</title>
|
||
<p>Sunucu içinde derlenmiş olarak <code>ServerLimit 20000</code>
|
||
şeklinde bir zorlayıcı sınır vardır (<module>prefork</module> için
|
||
200000’dir). Bu önlem, yazım hatalarının istenmeyen sonuçlara yol
|
||
açmasını engellemek için düşünülmüştür. Bu sınırı daha da arttırmak
|
||
için mpm kaynak dosyasındaki MAX_SERVER_LIMIT değerini değiştirip
|
||
sunucuyu yeniden derlemeniz gerekir.</p>
|
||
</note>
|
||
</usage>
|
||
<seealso><a href="../stopping.html">Apache HTTP Sunucusunu Durdurma ve Yeniden
|
||
Başlatma</a></seealso>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>StartServers</name>
|
||
<description>Sunucunun başlatılması sırasında oluşturulan çocuk süreçlerin
|
||
sayısını belirler.</description>
|
||
<syntax>StartServers <var>sayı</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpmt_os2</module>
|
||
<module>prefork</module><module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p><directive>StartServers</directive> yönergesi, sunucunun başlatılması
|
||
sırasında oluşturulan çocuk süreçlerin sayısını belirler. Süreç sayısı
|
||
normal olarak yüke bağlı olarak değişse de bu değerin ayarlanmasını
|
||
gerektirecek küçük bir sebep vardır.
|
||
(<directive module="mpm_common">MinSpareThreads</directive>,
|
||
<directive module="mpm_common">MaxSpareThreads</directive>,
|
||
<directive module="prefork">MinSpareServers</directive>,
|
||
<directive module="prefork">MaxSpareServers</directive> yönergelerine
|
||
bakınız.)</p>
|
||
|
||
<p>Öntanımlı değer MPM’den MPM’e fark eder. Öntanımlı değer
|
||
<module>worker</module> için <code>3</code> iken
|
||
<module>prefork</module> için <code>5</code>,
|
||
<module>mpmt_os2</module> için <code>2</code>'dir.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>StartThreads</name>
|
||
<description>Sunucunun başlatılması sırasında oluşturulan evrelerin sayısını
|
||
belirler.</description>
|
||
<syntax>StartThreads <var>sayı</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>mpm_netware</module></modulelist>
|
||
|
||
<usage>
|
||
<p><directive>StartThreads</directive> yönergesi, sunucunun başlatılması
|
||
sırasında oluşturulan evrelerin sayısını belirler. Evre sayısı normal
|
||
olarak yüke bağlı olarak değişse de bu değerin ayarlanmasını
|
||
gerektirecek küçük bir sebep vardır.
|
||
(<directive module="mpm_common">MinSpareThreads</directive>,
|
||
<directive module="mpm_common">MaxSpareThreads</directive>,
|
||
<directive module="prefork">MinSpareServers</directive>,
|
||
<directive module="prefork">MaxSpareServers</directive> yönergelerine
|
||
bakınız.)</p>
|
||
|
||
<p><module>mpm_netware</module> için <code>StartThreads 50</code>
|
||
öntanımlı olup, sadece tek bir süreç olduğundan, sunucunun başlatılması
|
||
sırasında oluşturulan evrelerin toplam sayısı <code>50</code>’dir.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>ThreadLimit</name>
|
||
<description>Çocuk süreç başına ayarlanabilir evre sayısının üst sınırını
|
||
belirler.</description>
|
||
<syntax>ThreadLimit <var>sayı</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_winnt</module>
|
||
<module>worker</module></modulelist>
|
||
<compatibility><module>mpm_winnt</module> için Apache HTTP Sunucusu 2.0.41 ve
|
||
sonrasında kullanılabilmektedir.</compatibility>
|
||
|
||
<usage>
|
||
<p>Bu yönerge, Apache httpd sürecinin ömrü boyunca <directive
|
||
module="mpm_common">ThreadsPerChild</directive> yönergesine
|
||
atanabilecek azami değeri belirler. Bu yönergeyi bir yeniden başlatma
|
||
sırasında değiştirirseniz bu değişiklik yok sayılır fakat <directive
|
||
module="mpm_common">ThreadsPerChild</directive> değişiklikleri dikkate
|
||
alınır.</p>
|
||
|
||
<p>Bu yönergenin kullanılması özel bir dikkat gerektirir. Eğer
|
||
<directive>ThreadLimit</directive> değeri <directive
|
||
module="mpm_common">ThreadsPerChild</directive> değerinden yüksek bir
|
||
değere ayarlanırsa, gereksiz yere paylaşımlı bellek ayrılmış olur. Eğer
|
||
<directive>ThreadLimit</directive> ve <directive
|
||
module="mpm_common">ThreadsPerChild</directive> değerleri sistemin
|
||
işleyebileceğinden daha yüksek değerlere ayarlanırsa Apache httpd
|
||
başlayamayacağı gibi sistemi kararsız hale de getirebilir. Bu yönergeye
|
||
Apache httpd'nin çalışması için öngörülmüş en büyük değerden daha
|
||
yükseğini atamayınız.</p>
|
||
|
||
<p><directive>ThreadLimit</directive> yönergesinin öntanımlı değeri
|
||
<module>mpm_winnt</module> için <code>1920</code>, diğerleri için
|
||
<code>64</code>’tür.</p>
|
||
|
||
<note><title>Ek Bilgi</title>
|
||
<p>Sunucu içinde derlenmiş olarak <code>ThreadLimit 20000</code>
|
||
şeklinde bir zorlayıcı sınır vardır (<module>mpm_winnt</module> için
|
||
15000’dir). Bu önlem, yazım hatalarının istenmeyen sonuçlara yol
|
||
açmasını engellemek için düşünülmüştür. Bu sınırı daha da arttırmak
|
||
için mpm kaynak dosyasındaki MAX_SERVER_LIMIT değerini değiştirip
|
||
sunucuyu yeniden derlemeniz gerekir.</p>
|
||
</note>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>ThreadsPerChild</name>
|
||
<description>Her çocuk süreç tarafından oluşturulan evrelerin sayısını
|
||
belirler.</description>
|
||
<syntax>ThreadsPerChild <var>sayı</var></syntax>
|
||
<default>Ayrıntılar için aşağıdaki açıklamaya bakınız.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_winnt</module>
|
||
<module>worker</module></modulelist>
|
||
|
||
<usage>
|
||
<p>Bu yönerge, her çocuk süreç tarafından oluşturulan evrelerin sayısını
|
||
belirler. Çocuk süreçler bu evreleri başlatıldıklarında oluştururlar ve
|
||
bundan daha fazlasını asla oluşturmazlar. <module>mpm_winnt</module>
|
||
gibi sadece bir çocuk sürecin bulunduğu bir MPM kullanıyorsanız, bu
|
||
sayı Apache httpd'nin tüm yükünü kaldırabilecek kadar büyük olmalıdır.
|
||
<module>worker</module> gibi çok çocuk süreçli bir MPM kullanıyorsanız,
|
||
<em>toplam</em> evre sayısı Apache httpd'nin tüm yükünü kaldırabilecek
|
||
kadar büyük olmalıdır.</p>
|
||
|
||
<p><directive>ThreadsPerChild</directive> için öntanımlı değer
|
||
<module>mpm_winnt</module> kullanıldığında <code>64</code> diğerleri
|
||
için <code>25</code>’tir.</p>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
<directivesynopsis>
|
||
<name>ThreadStackSize</name>
|
||
<description>İstemci bağlantılarını elde eden evreler tarafından kullanılan
|
||
yığıtın bayt cinsinden uzunluğunu belirler.</description>
|
||
<syntax>ThreadStackSize <var>boyut</var></syntax>
|
||
<default>NetWare üzerinde 65536; diğer işletim sistemlerinde
|
||
değişir.</default>
|
||
<contextlist><context>server config</context></contextlist>
|
||
<modulelist><module>event</module><module>mpm_netware</module>
|
||
<module>mpmt_os2</module><module>mpm_winnt</module><module>worker</module>
|
||
<module>event</module></modulelist>
|
||
<compatibility>Apache HTTP Sunucusu 2.1 ve sonrasında
|
||
kullanılabilir.</compatibility>
|
||
|
||
<usage>
|
||
<p><directive>ThreadStackSize</directive> yönergesi, istemci
|
||
bağlantılarını elde eden evreler ve bu bağlantıları işlemekte yardımcı
|
||
olan modül çağrıları tarafından kullanılan yığıtın bayt cinsinden
|
||
uzunluğunu belirler. Çoğu durumda işletim sistemi yığıtı uygun bir
|
||
boyuta ayarlar, fakat yine de ayarlanmasını gerektirecek bazı durumlar
|
||
olabilir:</p>
|
||
|
||
<ul>
|
||
<li>HP-UX gibi görece küçük yığıt boyuna sahip platformlarda, Apache
|
||
httpd, görece büyük yığıt alanı kullanan bazı üçüncü parti modüller
|
||
yüzünden çökebilir. Bu modüller öntanımlı yığıt boyu daha büyük olan
|
||
diğer platformlarda sorunsuz çalışabilir. Bu tür çökmeler
|
||
<directive>ThreadStackSize</directive> yönergesine daha büyük yığıt
|
||
boyu atanarak çözümlenir. Böyle bir ayarlamayı sadece üçüncü parti
|
||
modülün üreticisi bunun gerekliliğini belirtmişse veya Apache httpd’nin
|
||
evre yığıt boyutunun küçüklüğünden dolayı çöktüğü teşhis edildiği
|
||
takdirde yapınız.</li>
|
||
|
||
<li>Öntanımlı yığıt boyu Apache sunucusu için gerekenden belirgin
|
||
şekilde büyük bazı platformalarda, eğer
|
||
<directive>ThreadStackSize</directive> yönergesi ile bu boyuttan daha
|
||
düşük bir değer atanmışsa çocuk süreç başına evre sayısının yüksek
|
||
olduğu durumlarda bu yığıt yetmeyebilir. Böyle bir ayarlama sadece
|
||
sunucunun öldüresiye denendiği dolayısıyla yığıt boyutlarının aşırı
|
||
zorlandığı deneme ortamlarında yapılmalıdır. Gereken en küçük yığıt
|
||
boyutu kullanılan modüle sıkı sıkıya bağlıdır, fakat Apache httpd
|
||
yapılandırmasında yapılan bir değişiklik mevcut
|
||
<directive>ThreadStackSize</directive> ayarını geçersiz hale
|
||
getirebilir.</li>
|
||
|
||
<li>Linux üzerinde, ilgili sistem çağrısı <em>en küçük</em> yığıt boyutu
|
||
olarak bu değeri kullanacağından, bu yönerge sadece öntanımlı yığıt
|
||
boyutunu arttırmak için kullanılabilir. <code>ulimit -s</code> için
|
||
(çoğunlukla büyükçe) soft sınır (sınırsızsa 8MB), öntanımlı yığıt
|
||
boyutu olarak kullanılır.</li>
|
||
</ul>
|
||
|
||
<note>Çocuk süreç başına yüksek bir evre sayısı gerekmedikçe
|
||
<directive>ThreadStackSize</directive> değerinin azaltılmaması önerilir.
|
||
Bazı platformlarda (Linux dahil), 128000 ayarı zaten çok düşüktür ve daha
|
||
da azaltmak bazı modüllerle çökmeye sebep olur.</note>
|
||
</usage>
|
||
</directivesynopsis>
|
||
|
||
</modulesynopsis>
|