<a href="./ko/env.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="./tr/env.html" title="Türkçe"> tr </a></p>
</div>
-<div class="outofdate">Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.</div>
- <p>Apache HTTP Sunucusunda bilgiyi değişkenlerde saklamak için <em>ortam
- değişkenleri</em> adı verilen bir mekanizma bulunur. Saklanan bu bilgi
- erişim denetimi, günlük kaydı gibi çeşitli işlemleri denetlemekte
- kullanılabilir. Değişkenler ayrıca, CGI betikleri gibi harici
- uygulamalarla iletişim mekanizması olarak da kullanılabilir. Bu belgede
- bu değişkenler üzerindeki işlemlere ve kullanım şekillerine
- değinilmiştir.</p>
+ <p>Apache HTTP Sunucusunu etkileyen ortam değişkenleri iki çeşittir.</p>
+
+ <p>İlki, işletim sisteminin denetimindeki ortam değişkenleridir. Bu
+ değişkenlere değer atama işlemi sunucu başlatılmadan önce yapılır.
+ Bunlar yapılandırma dosyalarının içinde kullanılabilir. Ayrıca,
+ istenirse PassEnv yönergesi kullanılarak bunlar CGI betiklerine ve
+ SSI sayfalarına da aktarılabilir.</p>
+
+ <p>İkincisi ise, Apache HTTP Sunucusunun kendi ortam değişkenleridir.
+ Bu değişkenlerde saklanan bilgi erişim denetimi, günlük kaydı gibi
+ çeşitli işlemleri denetlemekte kullanılabilir. Değişkenler ayrıca, CGI
+ betikleri gibi harici uygulamalarla iletişim mekanizması olarak da
+ kullanılabilir. Bu belgede bu değişkenler üzerindeki işlemlere ve
+ kullanım şekillerine değinilmiştir.</p>
<p>Bu değişkenlere <em>ortam değişkenleri</em> dense de işletim sisteminin
ortam değişkenleri gibi değillerdir. Bunlar sadece Apache ortamında
<div class="section">
<h2><a name="setting" id="setting">Ortam Değişkenlerinin Atanması</a></h2>
- <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/mod_env.html">mod_env</a></code></li><li><code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code></li><li><code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code></li><li><code class="module"><a href="./mod/mod_unique_id.html">mod_unique_id</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatchnocase">BrowserMatchNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#passenv">PassEnv</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#setenv">SetEnv</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#unsetenv">UnsetEnv</a></code></li></ul></td></tr></table>
+ <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/mod_cache.html">mod_cache</a></code></li><li><code class="module"><a href="./mod/mod_env.html">mod_env</a></code></li><li><code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code></li><li><code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code></li><li><code class="module"><a href="./mod/mod_unique_id.html">mod_unique_id</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatch">BrowserMatch</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#browsermatchnocase">BrowserMatchNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#passenv">PassEnv</a></code></li><li><code class="directive"><a href="./mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#setenv">SetEnv</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvifnocase">SetEnvIfNoCase</a></code></li><li><code class="directive"><a href="./mod/mod_env.html#unsetenv">UnsetEnv</a></code></li></ul></td></tr></table>
<h3><a name="basic-manipulation" id="basic-manipulation">Temel Ortamda Değişiklik</a></h3>
<p>Apache yapılandırmasıyla atanan ve kabuğa aktarılan ortam
- değişkenlerinden başka <a href="http://www.w3.org/CGI/">CGI
+ değişkenlerinden başka <a href="http://www.ietf.org/rfc/rfc3875">CGI
Belirtimi</a>nin gerektirdiği istekler hakkında temel bilgileri
içeren ortam değişkenlerinin CGI betikleri ve SSI sayfalarınca
atanabilmesi sağlanmıştır.</p>
betiklerine ve SSI sayfalarına aktarılırken bu sınırlamalara uygun
olmayan karakterlerin yerlerine alt çizgi imleri konur.</li>
+ <li>Bir özel durum, CGI betiklerine ve benzerlerine ortam
+ değişkenleri üzerinden aktarılan HTTP başlıklarıdır (aşağıya
+ bakın). Bunlar büyük harfe dönüştürülür ve sadece tireler
+ altçizgilere dönüştürülür. Eğer HTTP başlığı geçersiz karakter
+ içeriyorsa başlığın tamamı yoksayılır. Böyle bir durumda ne
+ yapılacağı öğrenmek için <a href="#fixheader">aşağıya</a>
+ bakın.</li>
+
<li>İsteklerin işleme konması sırasında <code class="directive"><a href="./mod/mod_env.html#setenv">SetEnv</a></code> yönergesi geç çalıştırılır,
yani <code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> ve
<code class="directive"><a href="./mod/mod_rewrite.html#rewritecond">RewriteCond</a></code> gibi
<h2><a name="examples" id="examples">Örnekler</a></h2>
+ <h3><a name="fixheader" id="fixheader">Bozuk başlıkların CGI betiklerine aktarılması</a></h3>
+
+
+ <p>2.4 sürümünden itibaren, <code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code> modülü ve diğer
+ modüllerde HTTP başlıklarının ortam değişkenlerine dönüştürülmesi
+ bağlamında Apache daha seçici davranmaktadır. Önce HTTP başlığındaki
+ geçersiz karakterlerin tamamı altçizgilere dönüştürülür. Bu, başlık
+ zerki yoluyla yapılan karşı-site-betiklerini-çalıştırma saldırısını
+ önlemeye yöneliktir. (Bakınız: <a href="http://events.ccc.de/congress/2007/Fahrplan/events/2212.en.html">Unusual Web Bugs</a>, slide 19/20).</p>
+
+ <p>Bozuk başlıklar gönderdiği halde bunlara dokunulmamasını gerektiren
+ bir istemciniz varsa, <code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code> ve
+ <code class="module"><a href="./mod/mod_header.html">mod_header</a></code> modüllerinin sunduğu yapıyı örnekteki gibi
+ kullanarak bu sorunun üstesinden gelebilirsiniz:</p>
+
+<div class="example"><p><code>
+# <br />
+# Aşağıdaki satırlarla bir istemcinin gönderdiği bozuk<br />
+# Accept_Encoding başlıklarının istenildiği gibi işlenmesi<br />
+# sağlanabilir.<br />
+#<br />
+SetEnvIfNoCase ^Accept.Encoding$ ^(.*)$ fix_accept_encoding=$1<br />
+RequestHeader set Accept-Encoding %{fix_accept_encoding}e env=fix_accept_encoding
+</code></p></div>
+
+
+
<h3><a name="misbehaving" id="misbehaving">Protokolü yanlış yorumlayan tarayıcıların davranışlarının
değiştirilmesi</a></h3>
önerilirdi. Fakat, böyle tarayıcılar artık ortalıkta görünmediğinden
bu yapılandırmaya da artık gerek kalmamıştır.</p>
- <div class="example"><pre>
-#
-# Aşağıdaki yönergeler normal HTTP yanıt davranışını değiştirirler.
-# İlk yönerge Netscape 2.x ve kendini öyle gösteren tarayıcılar için
-# kalıcı bağlantıyı (keepalive) iptal eder. İkinci yönerge ise HTTP/1.1
-# protokolü bozuk olan ve 301/302 durum kodlu yönlendirme yanıtları
-# kullanıldığında kalıcı bağlantıları gerektiği gibi desteklemeyen
-# Microsoft Internet Explorer 4.0b2 içindir.
-#
-BrowserMatch "Mozilla/2" nokeepalive
-BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
-
-#
-# Aşağıdaki yönergeler HTTP/1.0 yanıtlarından başkasına yabancı olan
-# tarayıcılara HTTP/1.1 yanıtlarının gönderilmesini iptal eder.
-#
-BrowserMatch "RealPlayer 4\.0" force-response-1.0
-BrowserMatch "Java/1\.0" force-response-1.0
-BrowserMatch "JDK/1\.0" force-response-1.0</pre></div>
+<div class="example"><p><code>
+#<br />
+# Aşağıdaki yönergeler normal HTTP yanıt davranışını değiştirirler.<br />
+# İlk yönerge Netscape 2.x ve kendini öyle gösteren tarayıcılar için<br />
+# kalıcı bağlantıyı (keepalive) iptal eder. İkinci yönerge ise HTTP/1.1<br />
+# protokolü bozuk olan ve 301/302 durum kodlu yönlendirme yanıtları<br />
+# kullanıldığında kalıcı bağlantıları gerektiği gibi desteklemeyen<br />
+# Microsoft Internet Explorer 4.0b2 içindir.<br />
+#<br />
+BrowserMatch "Mozilla/2" nokeepalive<br />
+BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0<br />
+<br />
+#<br />
+# Aşağıdaki yönergeler HTTP/1.0 yanıtlarından başkasına yabancı olan<br />
+# tarayıcılara HTTP/1.1 yanıtlarının gönderilmesini iptal eder.<br />
+#<br />
+BrowserMatch "RealPlayer 4\.0" force-response-1.0<br />
+BrowserMatch "Java/1\.0" force-response-1.0<br />
+BrowserMatch "JDK/1\.0" force-response-1.0
+</code></p></div>
<h3><a name="no-img-log" id="no-img-log">Resim isteklerinin erişim günlüğüne kaydedilmemesi</a></h3>
varsayılmıştır.</p>
<div class="example"><p><code>
- SetEnvIf Referer "^http://filan\.fesmekan\.dom/" local_referal<br />
+ SetEnvIf Referer "^http://www\.example\.com/" local_referal<br />
# Referrer bilgisi göndermeyen tarayıcılara izin verelim<br />
SetEnvIf Referer "^$" local_referal<br />
- <Directory /siteler/resimler>
+ <Directory /siteler/resimler><br />
<span class="indent">
Order Deny,Allow<br />
Deny from all<br />
<a href="./ko/filter.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="./tr/filter.html" title="Türkçe"> tr </a></p>
</div>
-<div class="outofdate">Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.</div>
<p>Bu belge, Apache’de süzgeç kullanımı hakkındadır.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#intro">Apache 2’de Süzme İşlemi</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#smart">Akıllı Süzme</a></li>
+<li><img alt="" src="./images/down.gif" /> <a href="#service">Süzgeçleri bir HTTP Hizmeti gibi göstermek </a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#using">Süzgeçlerin Kullanımı</a></li>
</ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="intro" id="intro">Apache 2’de Süzme İşlemi</a></h2>
- <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/mod_filter.html">mod_filter</a></code></li><li><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code></li><li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code></li><li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_filter.html#filterchain">FilterChain</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterdeclare">FilterDeclare</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprotocol">FilterProtocol</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addinputfilter">AddInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeinputfilter">RemoveInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilteroptions">ExtFilterOptions</a></code></li><li><code class="directive"><a href="./mod/core.html#setinputfilter">SetInputFilter</a></code></li><li><code class="directive"><a href="./mod/core.html#setoutputfilter">SetOutputFilter</a></code></li></ul></td></tr></table>
+ <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/mod_filter.html">mod_filter</a></code></li><li><code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code></li><li><code class="module"><a href="./mod/mod_ext_filter.html">mod_ext_filter</a></code></li><li><code class="module"><a href="./mod/mod_include.html">mod_include</a></code></li><li><code class="module"><a href="./mod/mod_charset_lite.html">mod_charset_lite</a></code></li><li><code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code></li><li><code class="module"><a href="./mod/mod_buffer.html">mod_buffer</a></code></li><li><code class="module"><a href="./mod/mod_data.html">mod_data</a></code></li><li><code class="module"><a href="./mod/mod_ratelimit.html">mod_ratelimit</a></code></li><li><code class="module"><a href="./mod/mod_reqtimeout.html">mod_reqtimeout</a></code></li><li><code class="module"><a href="./mod/mod_request.html">mod_request</a></code></li><li><code class="module"><a href="./mod/mod_sed.html">mod_sed</a></code></li><li><code class="module"><a href="./mod/mod_substitute.html">mod_substitute</a></code></li><li><code class="module"><a href="./mod/mod_xml2enc.html">mod_xml2enc</a></code></li><li><code class="module"><a href="./mod/mod_proxy_html.html">mod_proxy_html</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_filter.html#filterchain">FilterChain</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterdeclare">FilterDeclare</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprotocol">FilterProtocol</a></code></li><li><code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addinputfilter">AddInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#addoutputfilter">AddOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeinputfilter">RemoveInputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_mime.html#removeoutputfilter">RemoveOutputFilter</a></code></li><li><code class="directive"><a href="./mod/mod_reflector.html#reflectorheader">ReflectorHeader</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilterdefine">ExtFilterDefine</a></code></li><li><code class="directive"><a href="./mod/mod_ext_filter.html#extfilteroptions">ExtFilterOptions</a></code></li><li><code class="directive"><a href="./mod/core.html#setinputfilter">SetInputFilter</a></code></li><li><code class="directive"><a href="./mod/core.html#setoutputfilter">SetOutputFilter</a></code></li></ul></td></tr></table>
<p>Apache 2.0 ve sonrasında mevcut olan Süzgeç Zinciri, uygulamaların
nereden geldiğine bakmaksızın gelen ve giden verileri oldukça esnek ve
</ul>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
+<h2><a name="service" id="service">Süzgeçleri bir HTTP Hizmeti gibi göstermek </a></h2>
+
+ <p>Süzgeçler, istemciden kaynaklanan içeriği işlemekte kullanılabileceği
+ gibi <code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code> modülü kullanılarak sunucudan
+ kaynaklanan içeriği işlemekte de kullanılabilir.</p>
+
+ <p><code class="module"><a href="./mod/mod_reflector.html">mod_reflector</a></code> istemcilerden gelen POST isteklerini
+ kabul eder ve çıktı süzgeç yığıtı yoluyla istemciye aktararak, POST
+ isteği içinde alınan içerik istek gövdesini yanıt içinde geri
+ gönderir.</p>
+
+ <p>Bu teknik, bir çıktı süzgeciyle istek gövdesinde gerekli dönüşümün
+ sağlandığı durumda, bir uygulama sunucusu yığıtı içinde çalışan bir http
+ hizmetinin yerine de kullanılabilir. Örneğin,
+ <code class="module"><a href="./mod/mod_deflate.html">mod_deflate</a></code> modülü genel bir sıkıştırma hizmeti
+ sağlamakta kullanılabilir veya bir resim dönüştürme süzgeci bir resim
+ dönüşüm hizmeti haline getirilebilir.</p>
+
+ </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
+<div class="section">
<h2><a name="using" id="using">Süzgeçlerin Kullanımı</a></h2>
<p>Süzgeçler iki şekilde kullanılır: Basit ve Devingen.
Genelde ikisinden biri kullanılır; karışık kullanılırsa istenmeyen
<code class="directive"><a href="./mod/mod_filter.html#filterprovider">FilterProvider</a></code>.</p>
<p><code class="directive"><a href="./mod/core.html#addoutputfilterbytype">AddOutputFilterByType</a></code> yönergesi
- hala desteklenmekteyse de sorun çıkarabilmesi sebebiyle kullanımı artık
+ hala desteklenmekteyse de kullanımı artık
önerilmemektedir. Onun yerine devingen yapılandırma kullanınız.</p>
</div></div>