]> granicus.if.org Git - apache/blob - docs/manual/env.xml.tr
XML update.
[apache] / docs / manual / env.xml.tr
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.tr.xsl"?>
4 <!-- English Revision: 1300910:1561569 (outdated) -->
5 <!-- =====================================================
6  Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
7    Reviewed by: Orhan Berent <berent belgeler.org>
8 ========================================================== -->
9
10 <!--
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
17
18      http://www.apache.org/licenses/LICENSE-2.0
19
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.
25 -->
26
27 <manualpage metafile="env.xml.meta">
28
29   <title>Apache’de Ortam Değişkenleri</title>
30
31   <summary>
32     <p>Apache HTTP Sunucusunu etkileyen ortam değişkenleri iki çeşittir.</p>
33
34     <p>İlki, işletim sisteminin denetimindeki ortam değişkenleridir. Bu
35       değişkenlere değer atama işlemi sunucu başlatılmadan önce yapılır.
36       Bunlar yapılandırma dosyalarının içinde kullanılabilir. Ayrıca,
37       istenirse PassEnv yönergesi kullanılarak bunlar CGI betiklerine ve
38       SSI sayfalarına da aktarılabilir.</p>
39
40     <p>İkincisi ise, Apache HTTP Sunucusunun kendi ortam değişkenleridir.
41       Bu değişkenlerde saklanan bilgi erişim denetimi, günlük kaydı gibi
42       çeşitli işlemleri denetlemekte kullanılabilir. Değişkenler ayrıca, CGI
43       betikleri gibi harici uygulamalarla iletişim mekanizması olarak da
44       kullanılabilir. Bu belgede bu değişkenler üzerindeki işlemlere ve
45       kullanım şekillerine değinilmiştir.</p>
46
47     <p>Bu değişkenlere <em>ortam değişkenleri</em> dense de işletim sisteminin
48       ortam değişkenleri gibi değillerdir. Bunlar sadece Apache ortamında
49       geçerli değişkenler olup işletim sisteminin bu değişkenlerden haberi
50       olmaz. Sadece CGI betikleri ve SSI sayfaları gibi harici uygulamalar
51       tarafından üretilen ortam değişkenleri sistem ortamının değişkenleri
52       haline gelirler. İşletim sistemi ortamına çalışmakta olan sunucudan
53       müdahale etmek isterseniz işletim sisteminizin kabuğu tarafından sağlanan
54       standart ortam müdahale mekanizmalarını kullanmalısınız.</p>
55   </summary>
56
57   <section id="setting">
58     <title>Ortam Değişkenlerinin Atanması</title>
59     <related>
60       <modulelist>
61         <module>mod_cache</module>
62         <module>mod_env</module>
63         <module>mod_rewrite</module>
64         <module>mod_setenvif</module>
65         <module>mod_unique_id</module>
66       </modulelist>
67       <directivelist>
68         <directive module="mod_setenvif">BrowserMatch</directive>
69         <directive module="mod_setenvif">BrowserMatchNoCase</directive>
70         <directive module="mod_env">PassEnv</directive>
71         <directive module="mod_rewrite">RewriteRule</directive>
72         <directive module="mod_env">SetEnv</directive>
73         <directive module="mod_setenvif">SetEnvIf</directive>
74         <directive module="mod_setenvif">SetEnvIfNoCase</directive>
75         <directive module="mod_env">UnsetEnv</directive>
76       </directivelist>
77     </related>
78
79     <section id="basic-manipulation">
80         <title>Temel Ortamda Değişiklik</title>
81
82         <p>Apache ortamında bir ortam değişkenine müdahale etmenin en temel
83           yolu hiçbir koşula tabi olmayan <directive module="mod_env"
84           >SetEnv</directive> yönergesini kullanmaktır. Bu değişkenleri Apache
85           başlatılırken sistem ortam değişkenleri haline getirmek için
86           <directive module="mod_env">PassEnv</directive> yönergesi
87           kullanılabilir.</p>
88
89     </section>
90     <section id="conditional">
91         <title>İsteğe Bağlı Şartlı Atamalar</title>
92
93         <p>Esnekliği arttırmak için, <module>mod_setenvif</module> modülü ile
94           isteğin özelliklerine uygun olarak her isteğe özel değişkenler
95           atayabilmek mümkün kılınmıştır. Örneğin, bir değişken sadece isteği
96           yapan tarayıcıya özgü bir değerle veya sadece belli bir başlık
97           alanınına bağlı olarak atanabilir. Daha da esnek bir mekanizma,
98           ortam değişkeni atamak için <code>[E=...]</code> seçeneğinin
99           kullanıldığı <module>mod_rewrite</module> modülünün <directive
100           module="mod_rewrite" >RewriteRule</directive> yönergesi ile
101           sağlanmıştır.</p>
102
103     </section>
104     <section id="unique-identifiers">
105         <title>Eşsiz Betimleyiciler</title>
106
107         <p>Son olarak, <module>mod_unique_id</module> <code>UNIQUE_ID</code>
108           ortam değişkenine her istek için o isteğin çok özel koşullar altında
109           tüm diğer istekler arasında eşsizliğini garanti edecek bir değer
110           atar.</p>
111
112     </section>
113     <section id="standard-cgi">
114         <title>Standart CGI Değişkenleri</title>
115
116         <p>Apache yapılandırmasıyla atanan ve kabuğa aktarılan ortam
117           değişkenlerinden başka <a href="http://www.ietf.org/rfc/rfc3875">CGI
118           Belirtimi</a>nin gerektirdiği istekler hakkında temel bilgileri
119           içeren ortam değişkenlerinin CGI betikleri ve SSI sayfalarınca
120           atanabilmesi sağlanmıştır.</p>
121
122     </section>
123     <section id="caveats">
124         <title>Bazı Yetersizlikler</title>
125
126         <ul>
127           <li>Standart CGI değişkenlerini ortam değişkenlerine müdahale
128             yönergelerini kullanarak değiştirmek veya geçersiz kılmak mümkün
129             değildir.</li>
130
131           <li>CGI betiklerini çalıştırmak için <program>suexec</program>
132             kullanıldığında ortam, CGI betikleri çalıştırılmadan önce
133             <em>güvenilir</em> değişkenler kalacak şekilde temizlenir.
134             <em>Güvenilir</em> değişken listesi <code>suexec.c</code> içinde
135             derleme sırasında tanımlanır.</li>
136
137           <li>Taşınabilirlik adına, ortam değişkenlerinin isimleri sadece
138             harfler, rakamlar ve alt çizgi imlerini içerebilir. Bunlara ek
139             olarak ismin ilk karakteri bir rakam olmamalıdır. Değişkenler CGI
140             betiklerine ve SSI sayfalarına aktarılırken bu sınırlamalara uygun
141             olmayan karakterlerin yerlerine alt çizgi imleri konur.</li>
142
143           <li>Bir özel durum, CGI betiklerine ve benzerlerine ortam
144             değişkenleri üzerinden aktarılan HTTP başlıklarıdır (aşağıya
145             bakın). Bunlar büyük harfe dönüştürülür ve sadece tireler
146             altçizgilere dönüştürülür. Eğer HTTP başlığı geçersiz karakter
147             içeriyorsa başlığın tamamı yoksayılır. Böyle bir durumda ne
148             yapılacağı öğrenmek için <a href="#fixheader">aşağıya</a>
149             bakın.</li>
150
151           <li>İsteklerin işleme konması sırasında <directive
152             module="mod_env">SetEnv</directive> yönergesi geç çalıştırılır,
153             yani <directive module="mod_setenvif">SetEnvIf</directive> ve
154             <directive module="mod_rewrite">RewriteCond</directive> gibi
155             yönergeler <directive module="mod_env">SetEnv</directive> ile
156             atanan değişken değerlerini görmezler.</li>
157         </ul>
158     </section>
159   </section>
160   <section id="using">
161     <title>Ortam Değişkenlerinin Kullanımı</title>
162
163     <related>
164       <modulelist>
165         <module>mod_authz_host</module>
166         <module>mod_cgi</module>
167         <module>mod_ext_filter</module>
168         <module>mod_headers</module>
169         <module>mod_include</module>
170         <module>mod_log_config</module>
171         <module>mod_rewrite</module>
172       </modulelist>
173       <directivelist>
174         <directive module="mod_access_compat">Allow</directive>
175         <directive module="mod_log_config">CustomLog</directive>
176         <directive module="mod_access_compat">Deny</directive>
177         <directive module="mod_ext_filter">ExtFilterDefine</directive>
178         <directive module="mod_headers">Header</directive>
179         <directive module="mod_log_config">LogFormat</directive>
180         <directive module="mod_rewrite">RewriteCond</directive>
181         <directive module="mod_rewrite">RewriteRule</directive>
182       </directivelist>
183     </related>
184
185     <section id="cgi-scripts">
186         <title>CGI Betikleri</title>
187
188         <p>Ortam değişkenlerinin başlıca amaçlarından biri CGI betikleriyle
189           iletişim kurmaktır. Yukarıda bahsedildiği gibi CGI betiklerine
190           aktarılan ortam Apache yapılandırmasında atanan değişkenlere ek
191           olarak istek hakkında standart temel bilgileri de içerir. Bu konuda
192           ayrıntılı bilgi edinmek için <a href="howto/cgi.html">CGI
193           Öğreticisi</a>ne bakabilirsiniz.</p>
194
195     </section>
196     <section id="ssi-pages">
197         <title>SSI Sayfaları</title>
198
199         <p>Sunucu tarafında <module>mod_include</module> modülünün
200           <code>INCLUDES</code> süzgeci ile yorumlanan SSI sayfalarında ortam
201           değişkenleri <code>echo</code> elemanı ile basılabilir ve sayfayı
202           isteğin özelliklerine uygun olarak oluşturmak için ortam
203           değişkenleri akış denetim elemanları içinde kullanılabilir. Apache
204           ayrıca, yukarıda bahsedildiği gibi standart CGI ortam değişkenli SSI
205           sayfalarını da sağlayabilmektedir. Daha ayrıntılı bilgi edinmek için
206           <a href="howto/ssi.html" >SSI Öğreticisi</a>ne bakabilirsiniz.</p>
207
208     </section>
209     <section id="access-control">
210         <title>Erişim Denetimi</title>
211
212         <p><code>allow from env=</code> ve <code>deny from env=</code>
213           yönergeleri sayesinde ortam değişkenlerine dayalı olarak sunucuya
214           erişim denetim altında tutulabilir. Bunlar <directive
215           module="mod_setenvif">SetEnvIf</directive> yönergesi ile birlikte
216           kullanılmak suretiyle sunucuya erişim isteğin özelliklerine bağlı
217           olarak daha esnek bir tarzda denetlenebilir. Örneğin, belli bir
218           tarayıcının sunucuya erişimi bu yönergelerle engellenebilir.</p>
219
220     </section>
221     <section id="logging">
222         <title>Şartlı Günlük Kaydı</title>
223
224         <p>Ortam değişkenleri <directive module="mod_log_config"
225           >LogFormat</directive> yönergesinin <code>%e</code> seçeneği
226           kullanılarak erişim günlüğüne kaydedilebilir. Bundan başka,
227           <directive module="mod_log_config">CustomLog</directive> yönergesi
228           sayesinde isteklerin günlüğe kaydedilip kaydedilmeyeceğine ortam
229           değişkenlerine dayalı olarak karar verilmesi sağlanabilir. Bunlar
230           <directive module="mod_setenvif">SetEnvIf</directive> yönergesi ile
231           birlikte kullanılmak suretiyle günlük kayıtları isteğin
232           özelliklerine bağlı olarak daha esnek bir tarzda denetlenebilir.
233           Örneğin, <code>gif</code> uzantılı dosyalar için yapılan isteklerin
234           günlüğe kaydedilmemesi veya sadece alt ağınızın dışından gelen
235           isteklerin günlüğe kaydedilmesini isteyebilirsiniz.</p>
236
237     </section>
238     <section id="response-headers">
239         <title>Şartlı Yanıt Başlıkları</title>
240
241         <p><directive module="mod_headers">Header</directive> yönergesi belli
242           bir yanıt başlığının istemciye gönderilip gönderilmeyeceğine belli
243           bir ortam değişkeninin varlığına bakarak karar vermek için
244           kullanılabilir. Böylece örneğin, belli bir başlığın istemciye
245           gönderilmesine istemciden belli bir başlığın alınıp alınmadığına
246           bağlı olarak karar verilebilir.</p>
247
248     </section>
249
250     <section id="external-filter">
251         <title>Harici Süzgeçlerin Etkinleştirilmesi</title>
252
253         <p><module>mod_ext_filter</module> tarafından yapılandırılan harici
254           süzgeçler <directive module="mod_ext_filter"
255           >ExtFilterDefine</directive> yönergesinin <code>disableenv=</code> ve
256           <code>enableenv=</code> seçenekleri kullanılarak bir ortam
257           değişkenine bağlı olarak etkinleştirilebilir.</p>
258     </section>
259
260     <section id="url-rewriting">
261         <title>URL Kurgulaması</title>
262
263         <p><directive module="mod_rewrite">RewriteCond</directive>
264           yönergesinin <em>SınamaDizgesi</em> olarak kullanılan
265           <code>%{ENV:<em>değişken</em>}</code> biçemi
266           <module>mod_rewrite</module> yeniden yazma motorunun ortam
267           değişkenlerine bağlı kararlar almasını mümkün kılar. Yalnız şuna
268           dikkat ediniz: <module>mod_rewrite</module>’ta <code>ENV:</code>
269           öneki kullanılmadan belirtilen değişkenler ortam değişkenleri
270           değillerdir. Onlar <module>mod_rewrite</module>’a özgü diğer
271           modüllerden erişilemeyen özel değişkenlerdir.</p>
272     </section>
273   </section>
274
275   <section id="special">
276     <title>Özel Amaçlı Ortam Değişkenleri</title>
277
278         <p>Birlikte çalışabilirlik sorunları Apache’nin belli istemcilerle
279           veri alışverişi sırasında davranışını değiştirmesini gerektirebilir.
280           Genellikle <directive module="mod_env" >SetEnv</directive> ve
281           <directive module="mod_env" >PassEnv</directive> yönergelerinden
282           başka <directive module="mod_setenvif" >BrowserMatch</directive>
283           gibi yönergelerle ortam değişkenleri atanarak bunu sağlayan
284           mekanizmaların olabildiğince esnek davranabilmesi sağlanabilir.</p>
285
286     <section id="downgrade">
287         <title><code>downgrade-1.0</code></title>
288
289         <p>İstek, daha yüksek bir HTTP protokolüyle yapılmış olsa bile
290           HTTP/1.0 isteği olarak ele alınır.</p>
291
292     </section>
293     <section id="force-gzip">
294         <title><code>force-gzip</code></title>
295           <p><code>DEFLATE</code> süzgeci etkinse tarayıcının tercih ettiği
296             kodlama koşulsuz olarak yoksayılarak sıkıştırılmış çıktı
297             gönderilir.</p>
298     </section>
299     <section id="force-no-vary">
300         <title><code>force-no-vary</code></title>
301
302         <p>İstemciye gönderilmeden önce yanıttan <code>Vary</code> alanının
303           çıkarılmasına sebep olur. Bazı istemciler bu alanı gerektiği gibi
304           yorumlayamazlar, bu değişken atanarak bu sorunla karşılaşılmamaya
305           çalışılır. Bu değişkenin atanması ayrıca
306           <strong>force-response-1.0</strong> değişkeninin de atanmasına sebep
307           olur.</p>
308
309     </section>
310     <section id="force-response">
311         <title><code>force-response-1.0</code></title>
312
313       <p>HTTP/1.0 isteği yapan istemcilere HTTP/1.0 yanıtı verilmesini zorunlu
314         kılar. AOL vekillerindeki bir sorun nedeniyle gerçeklenmiştir. Bazı
315         HTTP/1.0 istemciler HTTP/1.1 yanıtlarında doğru davranmayabilirler; bu
316         değişken atanarak bunların sorunları giderilebilir.</p>
317
318     </section>
319
320     <section id="gzip-only-text-html">
321         <title><code>gzip-only-text/html</code></title>
322
323         <p>Bu değişkene "1" değeri atandığında <code>text/html</code>’den
324           farklı içerik türleri için <module>mod_deflate</module> modülü
325           tarafından sağlanan <code>DEFLATE</code>  çıktı süzgeci iptal
326           edilir. Sıkıştırılmış olarak saklanan dosyalar kullanıyorsanız bu
327           değişkeni <module>mod_negotiation</module> modülü de dikkate alır
328           (kimliğine bakarak sadece gzip için değil, tüm kodlamalar için bunu
329           yapar).</p>
330     </section>
331
332     <section id="no-gzip"><title><code>no-gzip</code></title>
333
334         <p>Bu değişken atandığında, <module>mod_deflate</module> modülünün
335           <code>DEFLATE</code> süzgeci kapatılır ve
336           <module>mod_negotiation</module> modülü kodlanmış kaynak teslimatını
337           reddeder.</p>
338
339     </section>
340
341     <section id="no-cache"><title>no-cache</title>
342         <p><em>2.2.12 sürümünden beri kullanılabilmektedir.</em></p>
343
344         <p>Atandığı takdirde, <module>mod_cache</module> artık
345         önbelleklenebilecek yanıtları kaydetmeyecektir. Bu ortam değişkeni bir
346         yanıtın halihazırda mevcut bir isteğe sunulmak üzere önbellekte olup
347         olmadığından etkilenmez.</p>
348
349     </section>
350
351     <section id="nokeepalive">
352         <title><code>nokeepalive</code></title>
353
354         <p>Bu değişken atandığında, <directive module="core"
355           >KeepAlive</directive> yönergesi iptal edilir.</p>
356
357     </section>
358
359     <section id="prefer-language">
360         <title><code>prefer-language</code></title>
361
362         <p>Değer olarak <code>en</code>, <code>ja</code> veya
363           <code>x-klingon</code> gibi bir dil kısaltması verilerek atanmışsa
364           <module>mod_negotiation</module> modülünün normal davranışını
365           değiştirerek belirtilen dilde bir teslimat yapılmaya çalışılır.
366           Böyle bir belge yoksa normal <a
367           href="content-negotiation.html">uzlaşım</a> süreci uygulanır.</p>
368
369     </section>
370
371     <section id="redirect-carefully">
372         <title><code>redirect-carefully</code></title>
373
374         <p>İstemciye bir yönlendirme gönderirken sunucuyu daha dikkatli olmaya
375           zorlar. Bu genellikle istemcinin yönlendirmeler konusunda sorunlu
376           olduğu bilindiği takdirde yararlı olur. Bu değişkenin gerçeklenme
377           sebebi, dizin kaynaklarına yönlendirmeler için DAV yöntemlerini
378           kullanan Microsoft'un WebFolders yazılımındaki bir sorundur.</p>
379
380     </section>
381
382    <section id="suppress-error-charset">
383        <title><code>suppress-error-charset</code></title>
384
385     <p><em>2.0.54 sürümünden beri mevcuttur.</em></p>
386
387     <p>Apache bir isteğe bir yönlendirme ile yanıt verdiğinde istemci
388       yönlendirmeyi kendiliğinden yapmaz veya yapamazsa kullanıcıya yanıtla
389       birlikte gönderilen metin gösterilir. Apache normal olarak bu metni
390       ISO-8859-1 ile kodlar.</p>
391
392     <p>Ancak, yönlendirmenin yapıldığı sayfa farklı bir karakter kümesine
393       sahipse bazı tarayıcı sürümleri asıl sayfanın karakter kodlaması yerine
394       yönlendirmenin kodlamasını kullanmaya çalışırlar. Bu özellikle Yunanca
395       gibi dillerde hedef sayfanın hatalı yorumlanmasına yol açar.</p>
396
397     <p>Bu ortam değişkeninin atanması Apache’nin yönlendirme için karakter
398       kümesi belirtmemesini sağlamak suretiyle hatalı tarayıcıların hedef
399       sayfayı yanlış karakter kodlamasıyla yorumlamasını önler.</p>
400
401     <note type="warning">
402       <title>Güvenlik Uyarısı</title>
403
404       <p>Hata sayfalarının bir karakter kümesi belirtilmeksizin yollanması,
405         HTTP/1.1 belirtimine uymayan ve karakter kümesini içeriğe bakarak
406         tahmin etmeye çalışan tarayıcılarda (MSIE) karşı siteden betik
407         saldırısı yorumuna sebep olabilir.  Girdi verisindeki UTF-7 içerik
408         (istek betimleyici gibi) karşı siteden betik saldırılarını engellemek
409         için tasarlanmış normal önceleme mekanizmalarıyla öncelenmeyeceği için
410         böyle tarayıcılar UTF-7 karakter kodlaması kullanılarak kolayca
411         aldatılabilir.</p>
412     </note>
413
414    </section>
415
416    <section id="proxy"><title><code>force-proxy-request-1.0</code>,
417     <code>proxy-nokeepalive</code>, <code>proxy-sendchunked</code> ve
418     <code>proxy-sendcl</code>, <code>proxy-chain-auth</code>,
419     <code>proxy-interim-response</code>, <code>proxy-initial-not-pooled</code>
420     </title>
421
422    <p>Bu yönergeler <module>mod_proxy</module> modülünün normal protokol
423     davranışını değiştirirler. Daha ayrıntılı bilgi için
424     <module>mod_proxy</module> ve <module>mod_proxy_http</module>
425     belgelerine bakınız.</p>
426    </section>
427
428   </section>
429
430   <section id="examples">
431     <title>Örnekler</title>
432
433     <section id="fixheader">
434       <title>Bozuk başlıkların CGI betiklerine aktarılması</title>
435
436       <p>2.4 sürümünden itibaren, <module>mod_cgi</module> modülü ve diğer
437         modüllerde HTTP başlıklarının ortam değişkenlerine dönüştürülmesi
438         bağlamında Apache daha seçici davranmaktadır. Önce HTTP başlığındaki
439         geçersiz karakterlerin tamamı altçizgilere dönüştürülür. Bu, başlık
440         zerki yoluyla yapılan karşı-site-betiklerini-çalıştırma saldırısını
441         önlemeye yöneliktir. (Bakınız: <a
442         href="http://events.ccc.de/congress/2007/Fahrplan/events/2212.en.html"
443         >Unusual Web Bugs</a>, slide 19/20).</p>
444
445       <p>Bozuk başlıklar gönderdiği halde bunlara dokunulmamasını gerektiren
446         bir istemciniz varsa, <module>mod_setenvif</module> ve
447         <module>mod_header</module> modüllerinin sunduğu yapıyı örnekteki gibi
448         kullanarak bu sorunun üstesinden gelebilirsiniz:</p>
449
450 <example>
451 # <br />
452 # Aşağıdaki satırlarla bir istemcinin gönderdiği bozuk<br />
453 # Accept_Encoding başlıklarının istenildiği gibi işlenmesi<br />
454 # sağlanabilir.<br />
455 #<br />
456 SetEnvIfNoCase ^Accept.Encoding$ ^(.*)$ fix_accept_encoding=$1<br />
457 RequestHeader set Accept-Encoding %{fix_accept_encoding}e env=fix_accept_encoding
458 </example>
459
460     </section>
461
462     <section id="misbehaving">
463         <title>Protokolü yanlış yorumlayan tarayıcıların davranışlarının
464         değiştirilmesi</title>
465
466         <p>Önceki sürümlerde bilinen istemci davranışlarına karşı önlem olarak
467           aşağıdaki satırların <code>httpd.conf</code> içinde bulunması
468           önerilirdi. Fakat, böyle tarayıcılar artık ortalıkta görünmediğinden
469           bu yapılandırmaya da artık gerek kalmamıştır.</p>
470
471 <example>
472 #<br />
473 # Aşağıdaki yönergeler normal HTTP yanıt davranışını değiştirirler.<br />
474 # İlk yönerge Netscape 2.x ve kendini öyle gösteren tarayıcılar için<br />
475 # kalıcı bağlantıyı (keepalive) iptal eder. İkinci yönerge ise HTTP/1.1<br />
476 # protokolü bozuk olan ve 301/302 durum kodlu yönlendirme yanıtları<br />
477 # kullanıldığında kalıcı bağlantıları gerektiği gibi desteklemeyen<br />
478 # Microsoft Internet Explorer 4.0b2 içindir.<br />
479 #<br />
480 BrowserMatch "Mozilla/2" nokeepalive<br />
481 BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0<br />
482 <br />
483 #<br />
484 # Aşağıdaki yönergeler HTTP/1.0 yanıtlarından başkasına yabancı olan<br />
485 # tarayıcılara HTTP/1.1 yanıtlarının gönderilmesini iptal eder.<br />
486 #<br />
487 BrowserMatch "RealPlayer 4\.0" force-response-1.0<br />
488 BrowserMatch "Java/1\.0" force-response-1.0<br />
489 BrowserMatch "JDK/1\.0" force-response-1.0
490 </example>
491
492     </section>
493     <section id="no-img-log">
494         <title>Resim isteklerinin erişim günlüğüne kaydedilmemesi</title>
495
496         <p>Bu örnek resim isteklerinin erişim günlüğüne yazılmasını engeller.
497           Bu örnek değiştirilerek belli dizinlerin veya belli konaklardan
498           gelen isteklerin günlüğe kaydedilmesini engellemek amacıyla da
499           kullanılabilir.</p>
500
501         <example>
502           SetEnvIf Request_URI \.gif image-request<br />
503           SetEnvIf Request_URI \.jpg image-request<br />
504           SetEnvIf Request_URI \.png image-request<br />
505           CustomLog logs/access_log common env=!image-request
506         </example>
507
508     </section>
509     <section id="image-theft">
510         <title>“Resim Hırsızlığı” için önlem alınması</title>
511
512         <p>Bu örnekte sunucunuzda bulunmayan sayfalarda sunucunuzdaki
513           resimlerin kullanılmasının nasıl önleneceği gösterilmiştir. Bu
514           yapılandırma önerilmemekle birlikte nadir durumlarda işe yarar. Tüm
515           resimlerin <code>/siteler/resimler</code> dizini altında tutulduğu
516           varsayılmıştır.</p>
517
518         <example>
519           SetEnvIf Referer "^http://www\.example\.com/" local_referal<br />
520           # Referrer bilgisi göndermeyen tarayıcılara izin verelim<br />
521           SetEnvIf Referer "^$" local_referal<br />
522           &lt;Directory /siteler/resimler&gt;<br />
523           <indent>
524             Order Deny,Allow<br />
525             Deny from all<br />
526             Allow from env=local_referal
527           </indent>
528           &lt;/Directory&gt;
529         </example>
530
531         <p>Bu teknik hakkında daha ayrıntılı bilgi edinmek için ServerWatch
532           üzerindeki  "<a
533           href="http://www.serverwatch.com/tutorials/article.php/1132731"
534           >Diğer sitelerin sizin resimlerinizle donatılmasını engellemek</a>"
535           belgesine bakınız.</p>
536     </section>
537   </section>
538 </manualpage>