mod_setenvif.xml.tr revision 0a05fab9aadd37834734ffe106fc8ad4488fb3e3
f062ed7bd262a37a909dd77ce5fc23b446818823fielding<!DOCTYPE modulesynopsis SYSTEM "/style/modulesynopsis.dtd">
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd<?xml-stylesheet type="text/xsl" href="/style/manual.tr.xsl"?>
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd<!-- English Revision: 1180828:1673947 (outdated) -->
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd<!-- =====================================================
2d2eda71267231c2526be701fe655db125852c1ffielding Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd Reviewed by: Orhan Berent <berent belgeler.org>
2d2eda71267231c2526be701fe655db125852c1ffielding========================================================== -->
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd Licensed to the Apache Software Foundation (ASF) under one or more
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd contributor license agreements. See the NOTICE file distributed with
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd this work for additional information regarding copyright ownership.
2d2eda71267231c2526be701fe655db125852c1ffielding The ASF licenses this file to You under the Apache License, Version 2.0
2d2eda71267231c2526be701fe655db125852c1ffielding (the "License"); you may not use this file except in compliance with
2d2eda71267231c2526be701fe655db125852c1ffielding the License. You may obtain a copy of the License at
0432a26b69eedfb9ca5f34fba590236378a24851ben Unless required by applicable law or agreed to in writing, software
0432a26b69eedfb9ca5f34fba590236378a24851ben distributed under the License is distributed on an "AS IS" BASIS,
2d2eda71267231c2526be701fe655db125852c1ffielding WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2d2eda71267231c2526be701fe655db125852c1ffielding See the License for the specific language governing permissions and
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb limitations under the License.
cccd31fa4a72fe23cc3249c06db181b274a55a69gstein<description>Ortam değişkenlerinin isteğin özelliklerine uygun olarak atanmasını sağlar</description>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p><module>mod_setenvif</module> modülü dahili ortam değişkenlerinin
e6cc28a5eb3371ba0c38e941855e71ff0054f50erbb isteğin farklı bileşenlerinin belirttiğiniz düzenli ifade ile eşleşmesine
d9039a9aaeaa1359c1147af66c09aeac56ae3ee0pquerna bağlı olarak atanmasını mümkün kılar. Bu ortam değişkenleri sunucunun
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb çeşitli kısımlarında yapılacak eylemlerin yanında CGI betiklerinde ve SSI
9cfc48b742c224c1fbc2c26a4119a3266192c7d2wrowe sayfalarında kullanılabilir hale gelmelerine karar verilirken
9cfc48b742c224c1fbc2c26a4119a3266192c7d2wrowe kullanılır.</p>
7c7372abe2484e7fcf81937b93496d1246e5b816gstein <p>Yönergeler yapılandırma dosyasında yer aldıkları sıraya göre ele
7c7372abe2484e7fcf81937b93496d1246e5b816gstein alınırlar. Böylece daha karmaşık dizilimler kullanılabilir, bu örnekteki
7c7372abe2484e7fcf81937b93496d1246e5b816gstein tarayıcı Mozilla ise <code>netscape</code> ortam değişkeni atanmakta,
7c7372abe2484e7fcf81937b93496d1246e5b816gstein MSIE ise atanmamaktadır.</p>
7c7372abe2484e7fcf81937b93496d1246e5b816gstein BrowserMatch ^Mozilla netscape<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb BrowserMatch MSIE !netscape<br />
2d2eda71267231c2526be701fe655db125852c1ffielding<seealso><a href="/env.html">Apache HTTP Sunucusundaki Ortam Değişkenleri</a></seealso>
2d2eda71267231c2526be701fe655db125852c1ffielding<directivesynopsis>
2d2eda71267231c2526be701fe655db125852c1ffielding<description>Ortam değişkenlerini HTTP kullanıcı arayüzüne göre belirler.
2d2eda71267231c2526be701fe655db125852c1ffielding</description>
2d2eda71267231c2526be701fe655db125852c1ffielding<syntax>BrowserMatch <em>düzifd [!]ort-değişkeni</em>[=<em>değer</em>]
2d2eda71267231c2526be701fe655db125852c1ffielding[[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax>
2d2eda71267231c2526be701fe655db125852c1ffielding<context>virtual host</context><context>directory</context>
dd5cbadf2df719db2f3c769d03ec847da25854e6bnicholes <p><directive>BrowserMatch</directive> yönergesi <directive
dd5cbadf2df719db2f3c769d03ec847da25854e6bnicholes module="mod_setenvif" >SetEnvIf</directive> yönergesinin özel bir halidir
2d2eda71267231c2526be701fe655db125852c1ffielding ve ortam değişkenlerine <code>User-Agent</code> HTTP istek başlığının
2d2eda71267231c2526be701fe655db125852c1ffielding değerine göre atama yapar. Aşağıdaki iki satır aynı etkiye sahiptir:</p>
2d2eda71267231c2526be701fe655db125852c1ffielding BrowserMatchNoCase Robot is_a_robot<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb SetEnvIfNoCase User-Agent Robot is_a_robot<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb </example>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb BrowserMatch ^Mozilla forms jpeg=yes browser=netscape<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript<br />
2d2eda71267231c2526be701fe655db125852c1ffielding BrowserMatch MSIE !javascript<br />
2d2eda71267231c2526be701fe655db125852c1ffielding</directivesynopsis>
2d2eda71267231c2526be701fe655db125852c1ffielding<directivesynopsis>
2d2eda71267231c2526be701fe655db125852c1ffielding<description>Ortam değişkenlerini HTTP kullanıcı arayüzünün harf büyüklüğüne
2d2eda71267231c2526be701fe655db125852c1ffieldingduyarsız eşleşmelerine bağlı olarak belirler.</description>
2d2eda71267231c2526be701fe655db125852c1ffielding<syntax>BrowserMatchNoCase <em>düzifd [!]ort-değişkeni</em>[=<em>değer</em>]
2d2eda71267231c2526be701fe655db125852c1ffielding[[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax>
57edbe3cb9356a0b599c7b07f3aae0e721ee57e2coar<context>virtual host</context><context>directory</context>
2d2eda71267231c2526be701fe655db125852c1ffielding <p><directive>BrowserMatchNoCase</directive> yönergesi sözdizimsel ve
2d2eda71267231c2526be701fe655db125852c1ffielding anlamsal olarak <directive
2d2eda71267231c2526be701fe655db125852c1ffielding module="mod_setenvif">BrowserMatch</directive> yönergesinin eşdeğeridir.
2d2eda71267231c2526be701fe655db125852c1ffielding Ancak, eşleşmelerde harf büyüklüğüne duyarsızdır. Örnek:</p>
2d2eda71267231c2526be701fe655db125852c1ffielding BrowserMatchNoCase mac platform=macintosh<br />
2d2eda71267231c2526be701fe655db125852c1ffielding BrowserMatchNoCase win platform=windows<br />
2d2eda71267231c2526be701fe655db125852c1ffielding <directive>BrowserMatchNoCase</directive> yönergeleri <directive
2d2eda71267231c2526be701fe655db125852c1ffielding module="mod_setenvif">SetEnvIf</directive> ve <directive
2d2eda71267231c2526be701fe655db125852c1ffielding module="mod_setenvif">SetEnvIfNoCase</directive> yönergelerinin özel
2d2eda71267231c2526be701fe655db125852c1ffielding halleridir. Bu bakımda aşağıdaki iki satır aynı etkiye sahiptir:</p>
2d2eda71267231c2526be701fe655db125852c1ffielding BrowserMatchNoCase Robot is_a_robot<br />
2d2eda71267231c2526be701fe655db125852c1ffielding SetEnvIfNoCase User-Agent Robot is_a_robot<br />
2d2eda71267231c2526be701fe655db125852c1ffielding</directivesynopsis>
2d2eda71267231c2526be701fe655db125852c1ffielding<directivesynopsis>
2d2eda71267231c2526be701fe655db125852c1ffielding<description>Ortam değişkenlerini isteğin özniteliklerine göre atar.
2d2eda71267231c2526be701fe655db125852c1ffielding</description>
2d2eda71267231c2526be701fe655db125852c1ffielding [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax>
2d2eda71267231c2526be701fe655db125852c1ffielding<context>virtual host</context><context>directory</context>
2d2eda71267231c2526be701fe655db125852c1ffielding <p><directive>SetEnvIf</directive> yönergesi ortam değişkenlerini isteğin
2d2eda71267231c2526be701fe655db125852c1ffielding özniteliklerine göre tanımlar. İlk bileşen olarak belirtilen
e44e11f9fece12c783f18d033923bfc0d6b4289aake <code><em>öznitelik</em></code> şu dört şeyden biri olabilir:</p>
2d2eda71267231c2526be701fe655db125852c1ffielding <li>Bir HTTP istek başlığı alanı (ayrıntılı bilgi için bak: <a
2d2eda71267231c2526be701fe655db125852c1ffielding href="http://www.rfc-editor.org/rfc/rfc2616.txt">RFC2616</a>);
2d2eda71267231c2526be701fe655db125852c1ffielding <code>Referer</code> ve <code>Accept-Language</code>. Bir düzenli
2d2eda71267231c2526be701fe655db125852c1ffielding ifade kullanılarak birden fazla istek başlığı belirtilebilir.</li>
2d2eda71267231c2526be701fe655db125852c1ffielding <li>İsteğin aşağıdaki bileşenlerinden biri:
2d2eda71267231c2526be701fe655db125852c1ffielding <li><code>Remote_Host</code> - isteği yapan istemcinin konak ismi
2d2eda71267231c2526be701fe655db125852c1ffielding (varsa)</li>
2d2eda71267231c2526be701fe655db125852c1ffielding <li><code>Remote_Addr</code> -isteği yapan istemcinin IP adresi</li>
2d2eda71267231c2526be701fe655db125852c1ffielding <li><code>Server_Addr</code> - isteği alan sunucunun IP adresi
2d2eda71267231c2526be701fe655db125852c1ffielding (sadece 2.0.43 sonrası sürümler için)</li>
2d2eda71267231c2526be701fe655db125852c1ffielding <li><code>Request_Method</code> - kullanılan yöntemin ismi
2d2eda71267231c2526be701fe655db125852c1ffielding <li><code>Request_Protocol</code> - İsteğin yapıldığı protokolün
2d2eda71267231c2526be701fe655db125852c1ffielding ismi ve numarası ("HTTP/0.9", "HTTP/1.1" gibi)</li>
2d2eda71267231c2526be701fe655db125852c1ffielding <li><code>Request_URI</code> - HTTP istek satırında belirtilen
2d2eda71267231c2526be701fe655db125852c1ffielding özkaynak; genellikle sorgu dizgesi olmaksızın şema ve konak ismini
2d2eda71267231c2526be701fe655db125852c1ffielding içeren bir URL parçasıdır. Sorgu dizgeleriyle eşleşmeler hakkında
2d2eda71267231c2526be701fe655db125852c1ffielding ayrıntılı bilgi edinmek için <module>mod_rewrite</module>
2d2eda71267231c2526be701fe655db125852c1ffielding modülünün <directive module="mod_rewrite">RewriteCond</directive>
2d2eda71267231c2526be701fe655db125852c1ffielding yönergesinin açıklamasına bakınız.</li>
2d2eda71267231c2526be701fe655db125852c1ffielding <li>İstek ile evvelce ilişkilendirilmiş bir ortam değişkeninin ismi. Bu
2d2eda71267231c2526be701fe655db125852c1ffielding sayede önceki bir eşleşmenin sonucuna karşı yeni bir sınama yapma
2d2eda71267231c2526be701fe655db125852c1ffielding imkanı ortaya çıkar. Böyle bir sınama için sadece evvelce
2d2eda71267231c2526be701fe655db125852c1ffielding <code>SetEnvIf[NoCase]</code> yönergeleri ile yapılmış atamalardaki
2d2eda71267231c2526be701fe655db125852c1ffielding ortam değişkenleri kullanılabilir. ‘Evvelce’ derken, sunucu genelinde
2efb935ae8fe12d5192a3bf2c52c28461b6c68afdgaudet veya bölüm içinde bu yönergeden önce yer alan
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh <code>SetEnvIf[NoCase]</code> yönerge satırları kastedilmektedir.
2efb935ae8fe12d5192a3bf2c52c28461b6c68afdgaudet Ortam değişkenlerinin dikkate alınabilmesi için istek öznitelikleri
2efb935ae8fe12d5192a3bf2c52c28461b6c68afdgaudet arasında hiçbir eşleşme olmaması ve <code><em>öznitelik</em></code>
2efb935ae8fe12d5192a3bf2c52c28461b6c68afdgaudet olarak bir düzenli ifade belirtilmemiş olması gerekir.</li>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p>İkinci bileşen (<code><em>düzifd</em></code>) bir <glossary
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb ref="regex">düzenli ifade</glossary>dir. <code><em>düzifd</em></code>
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh ile <code><em>öznitelik</em></code> eşleştiği takdirde yönergenin kalan
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb bileşenleri değerlendirmeye alınır.</p>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p>Kalan bileşenler atanacak ortam değişkenlerinin isimleri ve isteğe
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb bağlı olarak bunlara atanacak değerlerden oluşur. Bunlar şöyle
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb belirtilebilir:</p>
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh <li><code><em>değişken-adı</em>=<em>değer</em></code></li>
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh <p>İlk biçemde değişkene "1" değeri atanır. İkincisinde atanmış bir
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh değişken atanmamış yapılır. Üçüncüsünde ise değişkene belirtilen
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <code><em>değer</em></code> bire bir atanır. 2.0.52 sürümünden itibaren
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb Apache httpd parantezli düzenli ifadelerin sonuçları ile değiştirilmek
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb üzere <code><em>value</em></code> içinde <code>$1</code>..<code>$9</code>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb gösterimleri tanınmaktadır.</p>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb SetEnvIf Request_URI "\.gif$" nesne_bir_resim=gif<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb SetEnvIf Request_URI "\.jpg$" nesne_bir_resim=jpg<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb SetEnvIf Request_URI "\.xbm$" nesne_bir_resim=xbm<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb SetEnvIf Referer belgeler\.alanismi\.mesela\.dom dahili_site_istendi<br />
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh SetEnvIf object_is_image xbm XBIT_PROCESSING=1<br />
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb SetEnvIf ^TS ^[a-z] TS_VAR<br />
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh </example>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p>İlk üçünde istek bir resim dosyası için yapılmışsa
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh <code>nesne_bir_resim</code> ortam değişkeni atanmakta, dördüncüsünde
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb istenen sayfa <code>belgeler.alanismi.mesela.dom</code> adlı sitede
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb bulunuyorsa <code>dahili_site_istendi</code> ortam değişkeni
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb atanmaktadır.</p>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p>Son örnekte ise istekte "TS" ile başlayıp [a-z] arasındaki
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb karakterlerle devam eden bir başlık alanı varsa <code>TS_VAR</code>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb ortam değişkeni atanmaktadır.</p>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb<seealso><a href="/env.html">Apache HTTP Sunucusundaki Ortam Değişkenleri</a>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbbbelgesinde daha fazla örnek bulunabilir.</seealso>
99d6d3207e24ba1f8eba77ef903948d738886cf5nd</directivesynopsis>
99d6d3207e24ba1f8eba77ef903948d738886cf5nd<directivesynopsis>
99d6d3207e24ba1f8eba77ef903948d738886cf5nd<description>Bir ap_expr ifadesine dayanarak ortam değişkenlerine değer atar</description>
99d6d3207e24ba1f8eba77ef903948d738886cf5nd [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax>
99d6d3207e24ba1f8eba77ef903948d738886cf5nd<context>virtual host</context><context>directory</context>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <directive type="section">If</directive> <code>ap_expr</code> ifadesine
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh dayanarak ortam değişkenlerine değer atar. Bu ifadeler çalışma anında
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb değerlendirilirerek <directive>SetEnvIf</directive> yönergesindeki gibi
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh SetEnvIfExpr "tolower(req('X-Sendfile')) == 'd:\images\very_big.iso')" iso_delivered
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p>Burada uygulamamızın her <code>X-Sendfile</code> göndermeye çalışmasında
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb ortam değişkenine <code>iso_delivered</code> değeri atanmaktadır.</p>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p>Uzak IP adresi RFC 1918'e göre özel bir adres ise rfc1918 değişkenine 1
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh atanması daha kullanışlı bir örnek olurdu:</p>
759f4a24d09e28c4eaca9f97311b497fc15cb5c7ben SetEnvIfExpr "-R '10.0.0.0/8' || -R '172.16.0.0/12' || -R '192.168.0.0/16'" rfc1918
759f4a24d09e28c4eaca9f97311b497fc15cb5c7ben<seealso><a href="/expr.html">Expressions in Apache HTTP Server</a>,
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbbfor a complete reference and more examples.</seealso>
759f4a24d09e28c4eaca9f97311b497fc15cb5c7ben<seealso><directive type="section">If</directive> can be used to achive similar
759f4a24d09e28c4eaca9f97311b497fc15cb5c7benresults.</seealso>
759f4a24d09e28c4eaca9f97311b497fc15cb5c7ben</directivesynopsis>
759f4a24d09e28c4eaca9f97311b497fc15cb5c7ben<directivesynopsis>
759f4a24d09e28c4eaca9f97311b497fc15cb5c7ben<description>Ortam değişkenlerini isteğin özniteliklerinde harf büyüklüğüne
759f4a24d09e28c4eaca9f97311b497fc15cb5c7benbağlı olmaksızın yapılmış tanımlara göre atar.</description>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb<context>virtual host</context><context>directory</context>
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb <p><directive>SetEnvIfNoCase</directive> yönergesi sözdizimsel ve anlamsal
bbe046d7cbb950ab3e372e4119ae001a5fe52ed4striker olarak <directive module="mod_setenvif">SetEnvIf</directive>
bbe046d7cbb950ab3e372e4119ae001a5fe52ed4striker yönergesinin eşdeğeridir. Ancak, eşleşmelerde harf büyüklüğüne
bbe046d7cbb950ab3e372e4119ae001a5fe52ed4striker duyarsızdır. Örnek:</p>
c8aa00ee0cfc17b5fa08fb8a2b08d30dc9e4f1b1wrowe SetEnvIfNoCase Host Example\.Org site=example
4542d057c4bde23857f31d449fa3108561206139wrowe <code>Example.Org</code>, <code>example.org</code> veya harf büyüklüğünce
c8aa00ee0cfc17b5fa08fb8a2b08d30dc9e4f1b1wrowe farklı benzerleri belirtilmişse <code>site</code> ortam değişkenine
b0f20a4a26bcfa85724b1c2e5ec6a077f12ef44crbb</directivesynopsis>
3d0bdf16bc410722e6c42aa2ceb0677b0ae29b90ianh</modulesynopsis>