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>mod_setenvif - 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>
17 <div id="page-header">
18 <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>
19 <p class="apache">Apache HTTP Sunucusu Sürüm 2.4</p>
20 <img alt="" src="../images/feather.gif" /></div>
21 <div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
23 <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.4</a> > <a href="./">Modüller</a></div>
24 <div id="page-content">
25 <div id="preamble"><h1>Apache Modülü mod_setenvif</h1>
27 <p><span>Mevcut Diller: </span><a href="../en/mod/mod_setenvif.html" hreflang="en" rel="alternate" title="English"> en </a> |
28 <a href="../fr/mod/mod_setenvif.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
29 <a href="../ja/mod/mod_setenvif.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
30 <a href="../ko/mod/mod_setenvif.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
31 <a href="../tr/mod/mod_setenvif.html" title="Türkçe"> tr </a></p>
33 <table class="module"><tr><th><a href="module-dict.html#Description">Açıklama:</a></th><td>Ortam değişkenlerinin isteğin özelliklerine uygun olarak atanmasını sağlar</td></tr>
34 <tr><th><a href="module-dict.html#Status">Durum:</a></th><td>Temel</td></tr>
35 <tr><th><a href="module-dict.html#ModuleIdentifier">Modül Betimleyici:</a></th><td>setenvif_module</td></tr>
36 <tr><th><a href="module-dict.html#SourceFile">Kaynak Dosyası:</a></th><td>mod_setenvif.c</td></tr></table>
40 <p><code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code> modülü dahili ortam değişkenlerinin
41 isteğin farklı bileşenlerinin belirttiğiniz düzenli ifade ile eşleşmesine
42 bağlı olarak atanmasını mümkün kılar. Bu ortam değişkenleri sunucunun
43 çeşitli kısımlarında yapılacak eylemlerin yanında CGI betiklerinde ve SSI
44 sayfalarında kullanılabilir hale gelmelerine karar verilirken
47 <p>Yönergeler yapılandırma dosyasında yer aldıkları sıraya göre ele
48 alınırlar. Böylece daha karmaşık dizilimler kullanılabilir, bu örnekteki
49 tarayıcı Mozilla ise <code>netscape</code> ortam değişkeni atanmakta,
50 MSIE ise atanmamaktadır.</p>
52 <pre class="prettyprint lang-config">
53 BrowserMatch ^Mozilla netscape
54 BrowserMatch MSIE !netscape
58 <div id="quickview"><h3 class="directives">Yönergeler</h3>
60 <li><img alt="" src="../images/down.gif" /> <a href="#browsermatch">BrowserMatch</a></li>
61 <li><img alt="" src="../images/down.gif" /> <a href="#browsermatchnocase">BrowserMatchNoCase</a></li>
62 <li><img alt="" src="../images/down.gif" /> <a href="#setenvif">SetEnvIf</a></li>
63 <li><img alt="" src="../images/down.gif" /> <a href="#setenvifexpr">SetEnvIfExpr</a></li>
64 <li><img alt="" src="../images/down.gif" /> <a href="#setenvifnocase">SetEnvIfNoCase</a></li>
66 <h3>Ayrıca bakınız:</h3>
68 <li><a href="../env.html">Apache HTTP Sunucusundaki Ortam Değişkenleri</a></li>
69 </ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div>
71 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
72 <div class="directive-section"><h2><a name="BrowserMatch" id="BrowserMatch">BrowserMatch</a> <a name="browsermatch" id="browsermatch">Yönergesi</a></h2>
73 <table class="directive">
74 <tr><th><a href="directive-dict.html#Description">Açıklama:</a></th><td>Ortam değişkenlerini HTTP kullanıcı arayüzüne göre belirler.
76 <tr><th><a href="directive-dict.html#Syntax">Sözdizimi:</a></th><td><code>BrowserMatch <em>düzifd [!]ort-değişkeni</em>[=<em>değer</em>]
77 [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</code></td></tr>
78 <tr><th><a href="directive-dict.html#Context">Bağlam:</a></th><td>sunucu geneli, sanal konak, dizin, .htaccess</td></tr>
79 <tr><th><a href="directive-dict.html#Override">Geçersizleştirme:</a></th><td>FileInfo</td></tr>
80 <tr><th><a href="directive-dict.html#Status">Durum:</a></th><td>Temel</td></tr>
81 <tr><th><a href="directive-dict.html#Module">Modül:</a></th><td>mod_setenvif</td></tr>
83 <p><code class="directive">BrowserMatch</code> yönergesi <code class="directive"><a href="#setenvif">SetEnvIf</a></code> yönergesinin özel bir halidir
84 ve ortam değişkenlerine <code>User-Agent</code> HTTP istek başlığının
85 değerine göre atama yapar. Aşağıdaki iki satır aynı etkiye sahiptir:</p>
87 <pre class="prettyprint lang-config">
88 BrowserMatchNoCase Robot is_a_robot
89 SetEnvIfNoCase User-Agent Robot is_a_robot
93 <p>Başka örnekler:</p>
95 <pre class="prettyprint lang-config">
96 BrowserMatch ^Mozilla forms jpeg=yes browser=netscape
97 BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript
98 BrowserMatch MSIE !javascript
103 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
104 <div class="directive-section"><h2><a name="BrowserMatchNoCase" id="BrowserMatchNoCase">BrowserMatchNoCase</a> <a name="browsermatchnocase" id="browsermatchnocase">Yönergesi</a></h2>
105 <table class="directive">
106 <tr><th><a href="directive-dict.html#Description">Açıklama:</a></th><td>Ortam değişkenlerini HTTP kullanıcı arayüzünün harf büyüklüğüne
107 duyarsız eşleşmelerine bağlı olarak belirler.</td></tr>
108 <tr><th><a href="directive-dict.html#Syntax">Sözdizimi:</a></th><td><code>BrowserMatchNoCase <em>düzifd [!]ort-değişkeni</em>[=<em>değer</em>]
109 [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</code></td></tr>
110 <tr><th><a href="directive-dict.html#Context">Bağlam:</a></th><td>sunucu geneli, sanal konak, dizin, .htaccess</td></tr>
111 <tr><th><a href="directive-dict.html#Override">Geçersizleştirme:</a></th><td>FileInfo</td></tr>
112 <tr><th><a href="directive-dict.html#Status">Durum:</a></th><td>Temel</td></tr>
113 <tr><th><a href="directive-dict.html#Module">Modül:</a></th><td>mod_setenvif</td></tr>
116 <p><code class="directive">BrowserMatchNoCase</code> yönergesi sözdizimsel ve
117 anlamsal olarak <code class="directive"><a href="#browsermatch">BrowserMatch</a></code> yönergesinin eşdeğeridir.
118 Ancak, eşleşmelerde harf büyüklüğüne duyarsızdır. Örnek:</p>
120 <pre class="prettyprint lang-config">
121 BrowserMatchNoCase mac platform=macintosh
122 BrowserMatchNoCase win platform=windows
126 <p><code class="directive">BrowserMatch</code> ve
127 <code class="directive">BrowserMatchNoCase</code> yönergeleri <code class="directive"><a href="#setenvif">SetEnvIf</a></code> ve <code class="directive"><a href="#setenvifnocase">SetEnvIfNoCase</a></code> yönergelerinin özel
128 halleridir. Bu bakımda aşağıdaki iki satır aynı etkiye sahiptir:</p>
130 <pre class="prettyprint lang-config">
131 BrowserMatchNoCase Robot is_a_robot
132 SetEnvIfNoCase User-Agent Robot is_a_robot
137 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
138 <div class="directive-section"><h2><a name="SetEnvIf" id="SetEnvIf">SetEnvIf</a> <a name="setenvif" id="setenvif">Yönergesi</a></h2>
139 <table class="directive">
140 <tr><th><a href="directive-dict.html#Description">Açıklama:</a></th><td>Ortam değişkenlerini isteğin özniteliklerine göre atar.
142 <tr><th><a href="directive-dict.html#Syntax">Sözdizimi:</a></th><td><code>SetEnvIf <em>öznitelik
143 düzifd [!]ort-değişkeni</em>[=<em>değer</em>]
144 [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</code></td></tr>
145 <tr><th><a href="directive-dict.html#Context">Bağlam:</a></th><td>sunucu geneli, sanal konak, dizin, .htaccess</td></tr>
146 <tr><th><a href="directive-dict.html#Override">Geçersizleştirme:</a></th><td>FileInfo</td></tr>
147 <tr><th><a href="directive-dict.html#Status">Durum:</a></th><td>Temel</td></tr>
148 <tr><th><a href="directive-dict.html#Module">Modül:</a></th><td>mod_setenvif</td></tr>
150 <p><code class="directive">SetEnvIf</code> yönergesi ortam değişkenlerini isteğin
151 özniteliklerine göre tanımlar. İlk bileşen olarak belirtilen
152 <code><em>öznitelik</em></code> şu dört şeyden biri olabilir:</p>
155 <li>Bir HTTP istek başlığı alanı (ayrıntılı bilgi için bak: <a href="http://www.rfc-editor.org/rfc/rfc2616.txt">RFC2616</a>);
156 örneğin: <code>Host</code>, <code>User-Agent</code>,
157 <code>Referer</code> ve <code>Accept-Language</code>. Bir düzenli
158 ifade kullanılarak birden fazla istek başlığı belirtilebilir.</li>
160 <li>İsteğin aşağıdaki bileşenlerinden biri:
162 <li><code>Remote_Host</code> - isteği yapan istemcinin konak ismi
165 <li><code>Remote_Addr</code> -isteği yapan istemcinin IP adresi</li>
167 <li><code>Server_Addr</code> - isteği alan sunucunun IP adresi
168 (sadece 2.0.43 sonrası sürümler için)</li>
170 <li><code>Request_Method</code> - kullanılan yöntemin ismi
171 (<code>GET</code>, <code>POST</code>, vs.)</li>
173 <li><code>Request_Protocol</code> - İsteğin yapıldığı protokolün
174 ismi ve numarası ("HTTP/0.9", "HTTP/1.1" gibi)</li>
176 <li><code>Request_URI</code> - HTTP istek satırında belirtilen
177 özkaynak; genellikle sorgu dizgesi olmaksızın şema ve konak ismini
178 içeren bir URL parçasıdır. Sorgu dizgeleriyle eşleşmeler hakkında
179 ayrıntılı bilgi edinmek için <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>
180 modülünün <code class="directive"><a href="../mod/mod_rewrite.html#rewritecond">RewriteCond</a></code>
181 yönergesinin açıklamasına bakınız.</li>
185 <li>İstek ile evvelce ilişkilendirilmiş bir ortam değişkeninin ismi. Bu
186 sayede önceki bir eşleşmenin sonucuna karşı yeni bir sınama yapma
187 imkanı ortaya çıkar. Böyle bir sınama için sadece evvelce
188 <code>SetEnvIf[NoCase]</code> yönergeleri ile yapılmış atamalardaki
189 ortam değişkenleri kullanılabilir. ‘Evvelce’ derken, sunucu genelinde
190 veya bölüm içinde bu yönergeden önce yer alan
191 <code>SetEnvIf[NoCase]</code> yönerge satırları kastedilmektedir.
192 Ortam değişkenlerinin dikkate alınabilmesi için istek öznitelikleri
193 arasında hiçbir eşleşme olmaması ve <code><em>öznitelik</em></code>
194 olarak bir düzenli ifade belirtilmemiş olması gerekir.</li>
197 <p>İkinci bileşen (<code><em>düzifd</em></code>) bir <a class="glossarylink" href="../glossary.html#regex" title="sözlüğe bakınız">düzenli ifade</a>dir. <code><em>düzifd</em></code>
198 ile <code><em>öznitelik</em></code> eşleştiği takdirde yönergenin kalan
199 bileşenleri değerlendirmeye alınır.</p>
201 <p>Kalan bileşenler atanacak ortam değişkenlerinin isimleri ve isteğe
202 bağlı olarak bunlara atanacak değerlerden oluşur. Bunlar şöyle
206 <li><code><em>değişken-adı</em></code> veya</li>
208 <li><code>!<em>değişken-adı</em></code> ya da </li>
210 <li><code><em>değişken-adı</em>=<em>değer</em></code></li>
213 <p>İlk biçemde değişkene "1" değeri atanır. İkincisinde atanmış bir
214 değişken atanmamış yapılır. Üçüncüsünde ise değişkene belirtilen
215 <code><em>değer</em></code> bire bir atanır. 2.0.52 sürümünden itibaren
216 Apache httpd parantezli düzenli ifadelerin sonuçları ile değiştirilmek
217 üzere <code><em>value</em></code> içinde <code>$1</code>..<code>$9</code>
218 gösterimleri tanınmaktadır.</p>
220 <pre class="prettyprint lang-config">
221 SetEnvIf Request_URI "\.gif$" nesne_bir_resim=gif
222 SetEnvIf Request_URI "\.jpg$" nesne_bir_resim=jpg
223 SetEnvIf Request_URI "\.xbm$" nesne_bir_resim=xbm
225 SetEnvIf Referer belgeler\.alanismi\.example\.com dahili_site_istendi
227 SetEnvIf object_is_image xbm XBIT_PROCESSING=1
229 SetEnvIf ^TS ^[a-z] TS_VAR
233 <p>İlk üçünde istek bir resim dosyası için yapılmışsa
234 <code>nesne_bir_resim</code> ortam değişkeni atanmakta, dördüncüsünde
235 istenen sayfa <code>belgeler.alanismi.example.com</code> adlı sitede
236 bulunuyorsa <code>dahili_site_istendi</code> ortam değişkeni
239 <p>Son örnekte ise istekte "TS" ile başlayıp [a-z] arasındaki
240 karakterlerle devam eden bir başlık alanı varsa <code>TS_VAR</code>
241 ortam değişkeni atanmaktadır.</p>
243 <h3>Ayrıca bakınız:</h3>
245 <li><a href="../env.html">Apache HTTP Sunucusundaki Ortam Değişkenleri</a>
246 belgesinde daha fazla örnek bulunabilir.</li>
249 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
250 <div class="directive-section"><h2><a name="SetEnvIfExpr" id="SetEnvIfExpr">SetEnvIfExpr</a> <a name="setenvifexpr" id="setenvifexpr">Yönergesi</a></h2>
251 <table class="directive">
252 <tr><th><a href="directive-dict.html#Description">Açıklama:</a></th><td>Bir ap_expr ifadesine dayanarak ortam değişkenlerine değer atar</td></tr>
253 <tr><th><a href="directive-dict.html#Syntax">Sözdizimi:</a></th><td><code>SetEnvIfExpr <em>ifade
254 [!]ort-değişkeni</em>[=<em>değer</em>]
255 [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</code></td></tr>
256 <tr><th><a href="directive-dict.html#Context">Bağlam:</a></th><td>sunucu geneli, sanal konak, dizin, .htaccess</td></tr>
257 <tr><th><a href="directive-dict.html#Override">Geçersizleştirme:</a></th><td>FileInfo</td></tr>
258 <tr><th><a href="directive-dict.html#Status">Durum:</a></th><td>Temel</td></tr>
259 <tr><th><a href="directive-dict.html#Module">Modül:</a></th><td>mod_setenvif</td></tr>
261 <p><code class="directive">SetEnvIfExpr</code> yönergesi bir
262 <code class="directive"><If></code> <code>ap_expr</code> ifadesine
263 dayanarak ortam değişkenlerine değer atar. Bu ifadeler çalışma anında
264 değerlendirilirerek <code class="directive">SetEnvIf</code> yönergesindeki gibi
265 <em>ort-değişkeni</em>ne uygulanır.</p>
267 <pre class="prettyprint lang-config">
268 SetEnvIfExpr "tolower(req('X-Sendfile')) == 'd:\images\very_big.iso')" iso_delivered
272 <p>Burada uygulamamızın her <code>X-Sendfile</code> göndermeye çalışmasında
273 ortam değişkenine <code>iso_delivered</code> değeri atanmaktadır.</p>
275 <p>Uzak IP adresi RFC 1918'e göre özel bir adres ise rfc1918 değişkenine 1
276 atanması daha kullanışlı bir örnek olurdu:</p>
278 <pre class="prettyprint lang-config">
279 SetEnvIfExpr "-R '10.0.0.0/8' || -R '172.16.0.0/12' || -R '192.168.0.0/16'" rfc1918
283 <h3>Ayrıca bakınız:</h3>
285 <li><a href="../expr.html">Expressions in Apache HTTP Server</a>,
286 for a complete reference and more examples.</li>
287 <li><code class="directive"><If></code> can be used to achive similar
289 <li><code class="module"><a href="../mod/mod_filter.html">mod_filter</a></code></li>
292 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
293 <div class="directive-section"><h2><a name="SetEnvIfNoCase" id="SetEnvIfNoCase">SetEnvIfNoCase</a> <a name="setenvifnocase" id="setenvifnocase">Yönergesi</a></h2>
294 <table class="directive">
295 <tr><th><a href="directive-dict.html#Description">Açıklama:</a></th><td>Ortam değişkenlerini isteğin özniteliklerinde harf büyüklüğüne
296 bağlı olmaksızın yapılmış tanımlara göre atar.</td></tr>
297 <tr><th><a href="directive-dict.html#Syntax">Sözdizimi:</a></th><td><code>SetEnvIfNoCase <em>öznitelik
298 düzifd [!]ort-değişkeni</em>[=<em>değer</em>]
299 [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</code></td></tr>
300 <tr><th><a href="directive-dict.html#Context">Bağlam:</a></th><td>sunucu geneli, sanal konak, dizin, .htaccess</td></tr>
301 <tr><th><a href="directive-dict.html#Override">Geçersizleştirme:</a></th><td>FileInfo</td></tr>
302 <tr><th><a href="directive-dict.html#Status">Durum:</a></th><td>Temel</td></tr>
303 <tr><th><a href="directive-dict.html#Module">Modül:</a></th><td>mod_setenvif</td></tr>
305 <p><code class="directive">SetEnvIfNoCase</code> yönergesi sözdizimsel ve anlamsal
306 olarak <code class="directive"><a href="#setenvif">SetEnvIf</a></code>
307 yönergesinin eşdeğeridir. Ancak, eşleşmelerde harf büyüklüğüne
308 duyarsızdır. Örnek:</p>
310 <pre class="prettyprint lang-config">
311 SetEnvIfNoCase Host Example\.Org site=example
315 <p>Burada, <code>Host:</code> HTTP istek başlığında
316 <code>Example.Org</code>, <code>example.org</code> veya harf büyüklüğünce
317 farklı benzerleri belirtilmişse <code>site</code> ortam değişkenine
318 "<code>example</code>" değeri atanmaktadır.</p>
322 <div class="bottomlang">
323 <p><span>Mevcut Diller: </span><a href="../en/mod/mod_setenvif.html" hreflang="en" rel="alternate" title="English"> en </a> |
324 <a href="../fr/mod/mod_setenvif.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
325 <a href="../ja/mod/mod_setenvif.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
326 <a href="../ko/mod/mod_setenvif.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
327 <a href="../tr/mod/mod_setenvif.html" title="Türkçe"> tr </a></p>
328 </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>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
329 <script type="text/javascript"><!--//--><![CDATA[//><!--
330 var comments_shortname = 'httpd';
331 var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_setenvif.html';
333 if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
334 d.write('<div id="comments_thread"><\/div>');
335 var s = d.createElement('script');
336 s.type = 'text/javascript';
338 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
339 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
342 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
344 })(window, document);
345 //--><!]]></script></div><div id="footer">
346 <p class="apache">Copyright 2013 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>
347 <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[//><!--
348 if (typeof(prettyPrint) !== 'undefined') {