1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>Yapılandırma Bölümleri - Apache HTTP Sunucusu</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
12 <script src="./style/scripts/prettify.js" type="text/javascript">
15 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p>
18 <p class="apache">Apache HTTP Sunucusu Sürüm 2.5</p>
19 <img alt="" src="./images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
22 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Sunucusu</a> > <a href="http://httpd.apache.org/docs/">Belgeleme</a> > <a href="./">Sürüm 2.5</a></div><div id="page-content"><div id="preamble"><h1>Yapılandırma Bölümleri</h1>
24 <p><span>Mevcut Diller: </span><a href="./en/sections.html" hreflang="en" rel="alternate" title="English"> en </a> |
25 <a href="./fr/sections.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
26 <a href="./ja/sections.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
27 <a href="./ko/sections.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
28 <a href="./tr/sections.html" title="Türkçe"> tr </a></p>
30 <div class="outofdate">Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.</div>
32 <p><a href="configuring.html">Yapılandırma dosyaları</a>ndaki
33 yönergeler sunucunun tamamına uygulanacağı gibi sadece belli dizinler,
34 dosyalar, konaklar veya URL’lere uygulanmakla sınırlanabilir. Bu
35 belgede, yapılandırma bölümü taşıyıcılarınının veya
36 <code>.htaccess</code> dosyalarının, yapılandırma dosyalarındaki diğer
37 yönergelerin etki alanlarını değiştirtirmek için nasıl kullanılacağı
40 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#types">Yapılandırma Bölümü Taşıyıcılarının Türleri</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#file-and-web">Dosya Sistemi, Site Alanı ve Mantıksal İfadeler</a></li>
42 <li><img alt="" src="./images/down.gif" /> <a href="#virtualhost">Sanal Konaklar</a></li>
43 <li><img alt="" src="./images/down.gif" /> <a href="#proxy">Vekil</a></li>
44 <li><img alt="" src="./images/down.gif" /> <a href="#whatwhere">Hangi Yönergelere İzin Veriliyor?</a></li>
45 <li><img alt="" src="./images/down.gif" /> <a href="#mergin">Bölümler Nasıl Katıştırılır?</a></li>
46 </ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div>
47 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
49 <h2><a name="types" id="types">Yapılandırma Bölümü Taşıyıcılarının Türleri</a></h2>
51 <table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/core.html">core</a></code></li><li><code class="module"><a href="./mod/mod_version.html">mod_version</a></code></li><li><code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/core.html#directory"><Directory></a></code></li><li><code class="directive"><a href="./mod/core.html#directorymatch"><DirectoryMatch></a></code></li><li><code class="directive"><a href="./mod/core.html#files"><Files></a></code></li><li><code class="directive"><a href="./mod/core.html#filesmatch"><FilesMatch></a></code></li><li><code class="directive"><a href="./mod/core.html#if"><If></a></code></li><li><code class="directive"><a href="./mod/core.html#ifdefine"><IfDefine></a></code></li><li><code class="directive"><a href="./mod/core.html#ifmodule"><IfModule></a></code></li><li><code class="directive"><a href="./mod/mod_version.html#ifversion"><IfVersion></a></code></li><li><code class="directive"><a href="./mod/core.html#location"><Location></a></code></li><li><code class="directive"><a href="./mod/core.html#locationmatch"><LocationMatch></a></code></li><li><code class="directive"><a href="./mod/mod_proxy.html#proxy"><Proxy></a></code></li><li><code class="directive"><a href="./mod/mod_proxy.html#proxymatch"><ProxyMatch></a></code></li><li><code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code></li></ul></td></tr></table>
53 <p>İki temel taşıyıcı türü vardır. Taşıyıcıların çoğu her istek için
54 değerlendirmeye alınır. Taşıyıcılardaki yönergeler ise sadece bu
55 taşıyıcılarla eşleşen istekler için uygulanır. Diğer yandan,
56 <code class="directive"><a href="./mod/core.html#ifdefine"><IfDefine></a></code>,
57 <code class="directive"><a href="./mod/core.html#ifmodule"><IfModule></a></code> ve
58 <code class="directive"><a href="./mod/mod_version.html#ifversion"><IfVersion></a></code>
59 taşıyıcıları sadece sunucu başlatılırken veya yeniden başlatılırken
60 değerlendirmeye alınır. Başlatma sırasında gerektirdikleri koşullar
61 sağlanıyorsa içerdikleri yönergeler tüm isteklere uygulanır. Aksi
62 takdirde, içerdikleri yönergeler yok sayılır.</p>
64 <p><code class="directive"><a href="./mod/core.html#ifdefine"><IfDefine></a></code> yönergesi
65 sadece <code class="program"><a href="./programs/httpd.html">httpd</a></code> komut satırında uygun parametreler
66 tanımlanmışsa uygulanabilecek yönergeleri içerir. Örneğin, aşağıdaki
67 yapılandırma ile tüm isteklerin diğer siteye yönlendirilebilmesi sadece
68 sunucu <code>httpd -DClosedForNow</code> komut satırı ile başlatıldığı
69 takdirde mümkün olur:</p>
71 <div class="example"><p><code>
72 <IfDefine ClosedForNow><br />
74 Redirect / http://otherserver.example.com/<br />
79 <p><code class="directive"><a href="./mod/core.html#ifmodule"><IfModule></a></code> yönergesi
80 sadece belli bir modülün sunucuda kullanılabilir durumda olması halinde
81 uygulanabilecek yönergeleri içerir. Modülün ya sunucuyla birlikte durağan
82 olarak derlenmiş olması ya da devingen olarak derlenmiş ve yapılandırma
83 dosyasında yönergeden önce o modüle ilişkin bir <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> satırının bulunması gerekir. Bu
84 yönergeyi sadece belli bir modülün varlığının veya yokluğunun
85 yapılandırma dosyanızın çalışmasını etkilememesini istediğiniz durumlarda
86 kullanmalısınız. Eksik modüllerle ilgili hata iletilerini
87 engellediğinden, taşıyıcı içine, her zaman çalışması istenen yönergeler
90 <p>Aşağıdaki örnekte, <code class="directive"><a href="./mod/mod_mime_magic.html#mimemagicfile">MimeMagicFile</a></code> yönergesi sadece
91 <code class="module"><a href="./mod/mod_mime_magic.html">mod_mime_magic</a></code> modülü mevcutsa uygulanacaktır.</p>
93 <div class="example"><p><code>
94 <IfModule mod_mime_magic.c><br />
96 MimeMagicFile conf/magic<br />
101 <p><code class="directive"><a href="./mod/mod_version.html#ifversion"><IfVersion></a></code>
102 yönergesi sunucunun belli bir sürümünün çalıştırılması halinde
103 uygulanabilecek yönergeleri içerebilmesi dışında <code class="directive"><a href="./mod/core.html#ifdefine"><IfDefine></a></code> ve <code class="directive"><a href="./mod/core.html#ifmodule"><IfModule></a></code> yönergeleri gibidir.
104 <code class="module"><a href="./mod/mod_version.html">mod_version</a></code> modülü farklı httpd sürümleri ve farklı
105 yapılandırmalarla büyük ağlarda çalışmayı mümkün kılmak veya sürüm
106 denemeleri yapabilmek amacıyla tasarlanmıştır.</p>
108 <div class="example"><p><code>
109 <IfVersion >= 2.1><br />
110 <span class="indent">
111 # burası sadece 2.1.0 veya daha üstü sürümlerde<br />
117 <p><code class="directive"><a href="./mod/core.html#ifdefine"><IfDefine></a></code>,
118 <code class="directive"><a href="./mod/core.html#ifmodule"><IfModule></a></code> ve
119 <code class="directive"><a href="./mod/mod_version.html#ifversion"><IfVersion></a></code>
120 yönergelerinin önüne "!" konularak olumsuz koşullar için uygulanabilir.
121 Ayrıca, bu bölümler daha karmaşık sınırlamalar elde etmek amacıyla bir
122 diğerinin içinde kullanılabilirler.</p>
123 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
124 <div class="section">
125 <h2><a name="file-and-web" id="file-and-web">Dosya Sistemi, Site Alanı ve Mantıksal İfadeler</a></h2>
128 <p>En sık kullanılan yapılandırma bölümü taşıyıcıları dosya sistemindeki
129 veya site alanındaki belli yerlerin yapılandırmalarını değiştirmekte
130 kullanılanlardır. Öncelikle, bu ikisi arasındaki farkları bilmek
131 önemlidir. Dosya sistemi disklerinizin işletim sistemi tarafından size
132 gösterilen halidir. Örneğin, öntanımlı kurulumda Apache httpd, Unix
133 sistemlerinde <code>/usr/local/apache2</code> altındayken Windows
134 sistemlerinde <code>"c:/Program Files/Apache Group/Apache2"</code>
135 altındadır. (Bilgi: Windows için bile, Apache httpd yapılandırma
136 dosyalarında dosya yolu belirtilirken tersbölü değil normal bölü
137 karakterleri kullanılır.) Site alanı ise sunucu tarafından istemciye
138 sunulan dizin ağacıdır. Yani, site alanı içindeki <code>/dir/</code>
139 dizini, Apache httpd’nin Unix üzerinde dosya sistemine öntanımlı olarak
140 kurulduğu yer göz önüne alınarak, dosya sistemindeki
141 <code>/usr/local/apache2/htdocs/dir/</code> dizinine karşılıktır. Site
142 sayfaları veritabanlarından veya başka yerlerden devingen olarak
143 üretilebildiğinden site alanlarının doğrudan dosya sistemine eşlenmesi
144 gerekli değildir.</p>
146 <h3><a name="filesystem" id="filesystem">Dosya Sistemi Taşıyıcıları</a></h3>
148 <p><code class="directive"><a href="./mod/core.html#directory"><Directory></a></code>
149 ve <code class="directive"><a href="./mod/core.html#files"><Files></a></code>
150 taşıyıcıları, <a class="glossarylink" href="./glossary.html#regex" title="sözlüğe bakınız">düzenli ifade</a> karşılıkları
151 ile beraber, yönergeleri dosya sisteminin parçalarına uygularlar. Bir
152 <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> bölümü
153 içindeki yönergeler belli bir dosya sistemi dizinine ve onun alt
154 dizinlerine uygulanır. Aynı etki <a href="howto/htaccess.html">.htaccess
155 dosyaları</a> kullanılarak da sağlanabilir. Örneğin aşağıdaki
156 yapılandırmada, <code>/var/web/dir1</code> dizini ve alt dizinlerinde
157 dizin içeriğinin listelenmesi etkin kılınmaktadır.</p>
159 <div class="example"><p><code>
160 <Directory /var/web/dir1><br />
161 <span class="indent">
162 Options +Indexes<br />
167 <p>Bir <code class="directive"><a href="./mod/core.html#files"><Files></a></code> bölümü
168 içindeki yönergeler, hangi dizinde bulunduğuna bakılmaksızın ismi
169 belirtilen dosyalara uygulanır. Örneğin, aşağıdaki yapılandırma
170 yönergeleri yapılandırma dosyasının ana bölümüne yerleştirildiği takdirde
171 <code>gizli.html</code> isimli dosyalara nerede bulunursa bulunsun
172 erişime izin vermeyecektir.</p>
174 <div class="example"><p><code>
175 <Files gizli.html><br />
176 <span class="indent">
177 Order allow,deny<br />
183 <p>Dosya sisteminin belli bir yerindeki belli dosyalarla ilgili yaptırımlar
184 için <code class="directive"><a href="./mod/core.html#files"><Files></a></code> ve
185 <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> bölümleri
186 birlikte kullanılabilir. Örneğin, aşağıdaki yapılandırma
187 <code>/var/web/dir1/gizli.html</code>,
188 <code>/var/web/dir1/subdir2/gizli.html</code>,
189 <code>/var/web/dir1/subdir3/gizli.html</code> ve
190 <code>/var/web/dir1/</code> altında bulunabilecek diğer tüm
191 <code>gizli.html</code> dosyalarına erişimi yasaklar.</p>
193 <div class="example"><p><code>
194 <Directory /var/web/dir1><br />
195 <span class="indent">
196 <Files gizli.html><br />
197 <span class="indent">
198 Order allow,deny<br />
207 <h3><a name="webspace" id="webspace">Site Alanı Taşıyıcıları</a></h3>
209 <p><code class="directive"><a href="./mod/core.html#location"><Location></a></code> yönergesi
210 ve yönergenin <a class="glossarylink" href="./glossary.html#regex" title="sözlüğe bakınız">düzenli ifade</a> karşılığı
211 site alanındaki içerik için yapılandırmayı değiştirir. Örneğin aşağıdaki
212 yapılandırma, <code>/gizli</code> ile başlayan URL yollarına erişimi
213 engeller. Özellikle, <code>http://siteniz.mesela.dom/gizli</code>,
214 <code>http://siteniz.mesela.dom/gizli123</code> ve
215 <code>http://siteniz.mesela.dom/gizli/dir/dosya.html</code>
216 istekleri yanında <code>/gizli</code> ile başlayan diğer isteklere de
219 <div class="example"><p><code>
220 <LocationMatch ^/gizli><br />
221 <span class="indent">
222 Order Allow,Deny<br />
225 </LocationMatch>
228 <p>Dosya sistemi ile etkileşime girmeyen herşey için
229 <code class="directive"><a href="./mod/core.html#location"><Location></a></code>
230 yönergesi gerekir. Aşağıdaki örnekte, belli bir URL’nin
231 <code class="module"><a href="./mod/mod_status.html">mod_status</a></code> modülü tarafından sağlanan bir dahili
232 Apache eylemcisine nasıl eşlenebileceği gösterilmiştir. Bu örnek
233 için dosya sisteminde <code>server-status</code> adında bir dosya
234 veya dizin bulunması gerekli değildir.</p>
236 <div class="example"><p><code>
237 <Location /server-status><br />
238 <span class="indent">
239 SetHandler server-status<br />
245 <h3><a name="overlapping-webspace" id="overlapping-webspace">Site Alanında Çakışma</a></h3>
246 <p>Belli bölümler ve yönergeler değerlendirilirken çakışan iki URL bir URL
247 olarak dikkate alınır. <code class="directive"><a href="./mod/core.html#location"><Location></a></code> yönergesi için bu şöyle olurdu:</p>
249 <div class="example"><p><code>
250 <Location /foo><br />
251 </Location><br />
252 <Location /foo/bar><br />
256 <p>Diğer yandan <code class="directive"><a href="./mod/mod_alias.html#takma adlar"><Takma
257 adlar></a></code> tam tersi eşlenir:</p>
259 <div class="example"><p><code>
260 Alias /foo/bar /srv/www/uncommon/bar<br />
261 Alias /foo /srv/www/common/foo<br />
264 <p>Aynısı <code class="directive"><a href="./mod/mod_proxy.html#proxypass">ProxyPass</a></code>
265 yönergeleri için de geçerlidir:</p>
267 <div class="example"><p><code>
268 ProxyPass /special-area http://special.example.com smax=5 max=10<br />
269 ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
273 <h3><a name="wildcards" id="wildcards">Dosya Adı Şablonları ve Düzenli İfadeler</a></h3>
276 <p><code class="directive"><a href="./mod/core.html#directory"><Directory></a></code>,
277 <code class="directive"><a href="./mod/core.html#files"><Files></a></code> ve
278 <code class="directive"><a href="./mod/core.html#location"><Location></a></code>
279 yönergelerinde, Standart C kütüphanesindeki <code>fnmatch</code>
280 işlevindeki gibi kabuk tarzı dosya ismi kalıpları kullanılabilir. "*"
281 karakteri herhangi bir karakter dizisi ile eşleşirken "?" karakteri tek
282 tek karakterlerle ve "[<em>seq</em>]" kalıbı ise <em>seq</em> içindeki
283 her karakterle eşleşir. "/" karakteri her hangi bir kalıp karakteri ile
284 eşleşmez; açıkça belirtilmesi gerekir.</p>
286 <p>Daha esnek bir eşleşmenin gerekli olduğu durumlar için her taşıyıcının
287 bir düzenli ifade karşılığı vardır. <code class="directive"><a href="./mod/core.html#directorymatch"><DirectoryMatch></a></code>, <code class="directive"><a href="./mod/core.html#filesmatch"><FilesMatch></a></code> ve <code class="directive"><a href="./mod/core.html#locationmatch"><LocationMatch></a></code> yönergelerinde gerekli
288 eşleşmeleri seçmek için perl uyumlu <a class="glossarylink" href="./glossary.html#regex" title="sözlüğe bakınız">düzenli
289 ifadelerin</a> kullanımına izin verilir. Ayrıca, yönergelerin
290 uygulanışının düzenli ifade bölümleri kullanılarak nasıl
291 değiştirileceğini öğrenmek için, aşağıda, yapılandırmanın
292 katıştırılmasıyla ilgili bölüme de bakınız.</p>
294 <p>Tüm kullanıcı dizinlerine ilişkin yapılandırmayı değiştirmek için dosya
295 ismi kalıpları şöyle kullanılabilirdi:</p>
297 <div class="example"><p><code>
298 <Directory /home/*/public_html><br />
299 <span class="indent">
300 Options Indexes<br />
305 <p>Düzenli ifade bölümleri kullanarak çeşitli türlerdeki resim dosyalarına
306 erişimi bir defada yasaklayabiliriz:</p>
308 <div class="example"><p><code>
309 <FilesMatch \.(?i:gif|jpe?g|png)$><br />
310 <span class="indent">
311 Order allow,deny<br />
318 <h3><a name="expressions" id="expressions">Mantıksal İfadeler</a></h3>
319 <p><code class="directive"><a href="./mod/core.html#if"><If></a></code> yönergesi bir
320 mantıksal ifade olarak belirtilebilen bir kurala bağlı olarak
321 yapılandırmayı değiştirebilir. Örneğin, aşağıdaki yapılandırmada,
322 <code>HTTP Referer</code> başlığı "http://www.example.com/" ile
323 başlamıyorsa erişimi yasaklar.</p>
325 <div class="example"><p><code>
326 <If "!(%{HTTP_REFERER} -strmatch 'http://www.example.com/*')"><br />
327 <span class="indent">
328 Require all denied<br />
334 <h3><a name="whichwhen" id="whichwhen">Ne, Ne Zaman Kullanılır?</a></h3>
335 <p>Dosya sistemi taşıyıcıları ile site alanı taşıyıcıları arasında seçim
336 yapmak aslında oldukça kolaydır. Dosya sisteminde bulunan nesnelere
337 uygulanacak yönergeler için daima <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> veya <code class="directive"><a href="./mod/core.html#files"><Files></a></code> kullanılır. Dosya sisteminde bulunmayan nesnelere
338 (bir sayfanın bir veritabanı tarafından üretilmesi gibi) uygulanacak
339 yönergeler için ise <code class="directive"><a href="./mod/core.html#location"><Location></a></code> kullanılır.</p>
341 <p>Dosya sistemindeki nesnelere erişimi kısıtlarken asla
342 <code class="directive"><a href="./mod/core.html#location"><Location></a></code>
343 kullanmamak önemlidir. Bunun sebebi farklı site alanı konumlarının
344 (URL’ler) aynı dosya sistemi konumuna eşlenebilmesi dolayısıyla
345 kısıtlamalarınızın etrafından dolaşılabilmesine izin vermesidir.
346 Örneğin, aşağıdaki yapılandırmayı ele alalım:</p>
348 <div class="example"><p><code>
349 <Location /dir/><br />
350 <span class="indent">
351 Order allow,deny<br />
357 <p><code>http://siteniz.mesela.dom/dir/</code> için bir istek yapılmışsa
358 bu doğru çalışacaktır. Fakat dosya sistemi harf büyüklüğüne duyarsızsa
359 ne olacak? Kısıtlamanız, istek
360 <code>http://siteniz.mesela.dom/DIR/</code>
361 şeklinde yapılarak kolayca geçersiz kılınabilir. Halbuki <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> yönergesi isteğin
362 nasıl yapıldığına bakılmaksızın bu konumdan sunulan her türlü içeriğe
363 uygulanacaktı. (Dosya sistemi bağlarıyla bu da aşılabilir. Sembolik
364 bağlar kullanılarak aynı dizin dosya sisteminin bir çok yerine
365 yerleştirilebilir. <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> yönergesi dosya yolunu sıfırlamaksızın sembolik
366 bağları izleyecektir. Bu bakımdan, en yüksek seviyede güvenlik için uygun
367 <code class="directive"><a href="./mod/core.html#options">Options</a></code> yönergesi ile sembolik
368 bağların izlenmesi devredışı bırakılabilir.)</p>
370 <p>Belki de siz sırf harf büyüklüğüne duyarlı bir dosya sistemi
371 kullanıyorsunuz diye böyle uygulamalara ihtiyacınız olmadığını düşünüyor
372 olabilirsiniz, fakat aynı site alanını çok sayıda dosya sistemi konumuna
373 eşleyecek daha bir sürü yol bulunduğunu unutmayınız. Bu bakımdan dosya
374 sisteminde yapacağınız kısıtlamalarda daima dosya sistemi taşıyıcılarını
375 kullanmalısınız. Bununla birlikte bu kuralın da bir istisnası vardır.
376 Yapılandırma kısıtlamalarının bir <code><Location/></code> bölümü
377 içine koyulması, bu bölüme konan yönergelerin etki alanının belli bir URL
378 ile sınırlı olmaması nedeniyle mükemmelen güvenlidir.</p>
381 <h3><a name="nesting" id="nesting">Bölüm iç içeliği</a></h3>
382 <p>Bazı bölüm türleri başka bölüm türlerinin içinde olabilir. Bir yandan,
383 <code class="directive"><a href="./mod/core.html#files"><Files></a></code> bölümü
384 <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> bölümünün
385 içinde bulunabilirken diğer yandan bir <code class="directive"><a href="./mod/core.html#if"><If></a></code> bölümü <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code>, <code class="directive"><a href="./mod/core.html#location"><Location></a></code> ve <code class="directive"><a href="./mod/core.html#files"><Files></a></code> bölümlerinde bulunabilir.
386 Bu bölümlerin düzenli ifadeli türevleri de benzer tarzda davranır.</p>
388 <p>İç içe bölümler, aynı türdeki iç içe olmayan bölümlerin sonrasına
392 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
393 <div class="section">
394 <h2><a name="virtualhost" id="virtualhost">Sanal Konaklar</a></h2>
396 <p><code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>
397 taşıyıcısının içinde belli bir konağa uygulanan yönergeler bulunur.
398 Aynı makinede çok sayıda konağı farklı yapılandırmalarla sunuyorsanız
399 bu taşıyıcı çok işinize yarar. Daha fazla bilgi için
400 <a href="vhosts/">Sanal Konak Belgeleri</a> bölümüne bakınız.</p>
401 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
402 <div class="section">
403 <h2><a name="proxy" id="proxy">Vekil</a></h2>
404 <p><code class="directive"><a href="./mod/mod_proxy.html#proxy"><Proxy></a></code>
405 ve <code class="directive"><a href="./mod/mod_proxy.html#proxymatch"><ProxyMatch></a></code>
406 taşıyıcıları, sadece belli bir URL ile eşleşen <code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code>
407 vekil sunucusu üzerinden erişilen sitelere uygulanan yapılandırma
408 yönergelerini bulundururlar. Örneğin aşağıdaki yapılandırma
409 <code>example.com</code> sitesine erişim için vekil sunucunun
410 kullanılmasını engelleyecektir.</p>
412 <div class="example"><p><code>
413 <Proxy http://example.com/*><br />
414 <span class="indent">
415 Order allow,deny<br />
420 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
421 <div class="section">
422 <h2><a name="whatwhere" id="whatwhere">Hangi Yönergelere İzin Veriliyor?</a></h2>
423 <p>Hangi yönergelere hangi yapılandırma bölümlerinde izin verildiğini
424 öğrenmek için yönerge <a href="mod/directive-dict.html#Context">bağlamına</a> bakınız. <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> bölümlerinde
425 izin verilen herşeye sözdizimsel olarak ayrıca
426 <code class="directive"><a href="./mod/core.html#directorymatch"><DirectoryMatch></a></code>,
427 <code class="directive"><a href="./mod/core.html#files"><Files></a></code>,
428 <code class="directive"><a href="./mod/core.html#filesmatch"><FilesMatch></a></code>,
429 <code class="directive"><a href="./mod/core.html#location"><Location></a></code>,
430 <code class="directive"><a href="./mod/core.html#locationmatch"><LocationMatch></a></code>,
431 <code class="directive"><a href="./mod/mod_proxy.html#proxy"><Proxy></a></code>
432 ve <code class="directive"><a href="./mod/mod_proxy.html#proxymatch"><ProxyMatch></a></code>
433 bölümlerinde de izin verilir. Yine de bazı istisnai durumlar
437 <li><code class="directive"><a href="./mod/core.html#allowoverride">AllowOverride</a></code> yönergesi sadece
438 <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code>
439 bölümlerinde çalışır.</li>
441 <li><code class="directive"><a href="./mod/core.html#options">Options</a></code> yönergesinin
442 <code>FollowSymLinks</code> ve <code>SymLinksIfOwnerMatch</code>
443 seçenekleri sadece <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> bölümlerinde veya <code>.htaccess</code>
444 dosyalarında çalışır.</li>
446 <li><code class="directive"><a href="./mod/core.html#options">Options</a></code> yönergesi
447 <code class="directive"><a href="./mod/core.html#files"><Files></a></code> ve
448 <code class="directive"><a href="./mod/core.html#filesmatch"><FilesMatch></a></code>
449 bölümlerinde kullanılamaz.</li>
451 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
452 <div class="section">
453 <h2><a name="mergin" id="mergin">Bölümler Nasıl Katıştırılır?</a></h2>
455 <p>Yapılandırma bölümleri belli bir sıra ile uygulanır. Yapılandırma
456 yönergelerinin yorumlanışı üzerinde önemli etkilere sahip olabilmesi
457 nedeniyle neyin ne zaman çalıştığını anlamak çok önemlidir.</p>
459 <p>Yapılandırma bölümlerinin katıştırılma sırası şöyledir:</p>
462 <li><code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> (düzenli ifadeler hariç)
463 ve <code>.htaccess</code> aynı anda işleme sokulur
464 (<code>.htaccess</code> ile eğer izin verilmişse <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> içindeki bazı
465 yönergeler geçersiz kılınabileceği için).</li>
467 <li><code class="directive"><a href="./mod/core.html#directorymatch"><DirectoryMatch></a></code>
468 (ve <code><Directory ~></code>).</li>
470 <li><code class="directive"><a href="./mod/core.html#files"><Files></a></code> ve
471 <code class="directive"><a href="./mod/core.html#filesmatch"><FilesMatch></a></code> aynı anda
474 <li><code class="directive"><a href="./mod/core.html#location"><Location></a></code>
475 ve <code class="directive"><a href="./mod/core.html#locationmatch"><LocationMatch></a></code>
476 aynı anda işleme sokulur.</li>
478 <li><code class="directive"><a href="./mod/core.html#if"><If></a></code>
482 <p><code class="directive"><a href="./mod/core.html#directory"><Directory></a></code>
483 bölümündekiler hariç, her grup, yapılandırma dosyasında bulundukları
484 sıraya göre işleme sokulurlar. Yukarıda 1. grup olan <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> bölümü en kısa dizin
485 elemanından en uzun dizin elemanına doğru işleme sokulur. Yani, örneğin,
486 <code><Directory /var/web/dir></code> bölümü <code><Directory
487 /var/web/dir/subdir></code> bölümünden önce işleme sokulacaktır. Eğer
488 aynı uzunlukta çok sayıda dizin varsa <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> bölümleri yapılandırma dosyasında
489 bulundukları sıraya göre işleme sokulurlar. <code class="directive"><a href="./mod/core.html#include">Include</a></code> yönergeleri ile yapılandırmaya dahil
490 edilen dosyaların içerikleri <code class="directive"><a href="./mod/core.html#include">Include</a></code>
491 yönergesinin bulunduğu yere konulduktan sonra işleme sokulurlar.</p>
493 <p><code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code>
494 bölümlerinin içindeki bölümler, sanal konak tanımı dışındaki
495 karşılıklarından <em>sonra</em> uygulanırlar.</p>
497 <p>İstek <code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code> tarafından sunulduğu takdirde,
498 <code class="directive"><a href="./mod/mod_proxy.html#proxy"><Proxy></a></code> taşıyıcısı
499 işlem sırasında <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code> taşıyıcısının yerini alır.</p>
501 <p>Sonraki bölümler öncekileri geçersiz kılmak üzere işleme alınırlarsa da
502 her modül bu geçersiz kılmaya sebep olan formu yorumlamaktan sorumludur.
503 Belli bir modülülün yönergeleri bulunan sonraki yapılandırma bölümleri,
504 bazı yönergelerin, tüm yönergelerin veya modül yapılandırmasının
505 tamamının sonraki bağlamda açıkça listelenmiş modül öntanımlıları ve
506 yönergelerle bir kavramsal "katıştırmasına" sebep olabilir.</p>
508 <div class="note"><h3>Bazı Teknik Bilgiler</h3>
509 Aslında, isim dönüşüm aşamasından (<code>Aliases</code> ve
510 <code>DocumentRoots</code>, URL’leri dosya isimlerine eşlemek için
511 kullanılırken) hemen önce uygulanan bir
512 <code><Location></code>/<code><LocationMatch></code> dizisi
513 vardır. Bu dizinin sonuçları isim dönüşüm aşaması tamamlandıktan sonra
514 tamamen elden çıkarılır.
517 <h3><a name="merge-examples" id="merge-examples">Bazı Örnekler</a></h3>
519 <p>Aşağıdaki yapay örnekte katıştırma sırası gösterilmiştir. Hepsinin aynı
520 isteğe uygulandığı varsayımıyla, bu örnekteki yönergeler A > B > C
521 > D > E sırasıyla uygulanacaktır.</p>
523 <div class="example"><p><code>
524 <Location /><br />
526 </Location><br />
528 <Files f.html><br />
532 <VirtualHost *><br />
533 <Directory /a/b><br />
535 </Directory><br />
536 </VirtualHost><br />
538 <DirectoryMatch "^.*b$"><br />
540 </DirectoryMatch><br />
542 <Directory /a/b><br />
544 </Directory><br />
548 <p>Daha somut bir örnek olarak aşağıdakini ele alalım.
549 <code class="directive"><a href="./mod/core.html#directory"><Directory></a></code>
550 bölümlerindeki erişim sınırlamaları ne olursa olsun <code class="directive"><a href="./mod/core.html#location"><Location></a></code> bölümü son olarak
551 değerlendirmeye alınacak ve sunucuya sınırsız erişim verecektir.
552 Başka bir deyişle, katıştırma sırası önemlidir, bu nedenle dikkatli
555 <div class="example"><p><code>
556 <Location /><br />
557 <span class="indent">
558 Order deny,allow<br />
561 </Location><br />
563 # Alooo! Bu <Directory> bölümünün hiçbir hükmü yok.<br />
564 <Directory /><br />
565 <span class="indent">
566 Order allow,deny<br />
568 Deny from kkadam.mesela.dom<br />
575 <div class="bottomlang">
576 <p><span>Mevcut Diller: </span><a href="./en/sections.html" hreflang="en" rel="alternate" title="English"> en </a> |
577 <a href="./fr/sections.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
578 <a href="./ja/sections.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
579 <a href="./ko/sections.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
580 <a href="./tr/sections.html" title="Türkçe"> tr </a></p>
581 </div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Yorum</a></h2><div class="warning"><strong>This section is experimental!</strong><br />Comments placed here should not be expected
582 to last beyond the testing phase of this system, nor do we in any way guarantee that we'll read them.</div>
583 <div id="disqus_thread">
584 </div><script type="text/javascript"><!--//--><![CDATA[//><!--
586 var disqus_shortname = 'httpd';
587 var disqus_identifier = window.location.href.replace(/(current|trunk)/, "2.4").replace(/\/[a-z]{2}\//, "/").replace(window.location.protocol, "http:") + '.' + lang;
588 if (disqus_identifier.indexOf("httpd.apache.org") != -1) {
590 var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
591 dsq.src = window.location.protocol + '//' + disqus_shortname + '.disqus.com/embed.js';
592 (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
595 var text = document.createTextNode("Comments have been disabled for offline viewing.");
596 document.getElementById('disqus_thread').appendChild(text);
598 //--><!]]></script></div><div id="footer">
599 <p class="apache">Copyright 2012 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> altında lisanslıdır.</p>
600 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
601 if (typeof(prettyPrint) !== undefined) {