| <?xml version="1.0"?> |
| <!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd"> |
| <?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?> |
| <!-- English Revision: 658546:1180828 (outdated) --> |
| <!-- ===================================================== |
| Translated by: Nilgün Belma Bugüner <nilgun belgeler.org> |
| Reviewed by: Orhan Berent <berent belgeler.org> |
| ========================================================== --> |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <modulesynopsis metafile="mod_setenvif.xml.meta"> |
| |
| <name>mod_setenvif</name> |
| <description>Ortam değişkenlerinin isteğin özelliklerine uygun olarak atanmasını sağlar</description> |
| <status>Base</status> |
| <sourcefile>mod_setenvif.c</sourcefile> |
| <identifier>setenvif_module</identifier> |
| |
| |
| <summary> |
| |
| <p><module>mod_setenvif</module> modülü ortam değişkenlerinin isteğin |
| farklı bileşenlerinin belirttiğiniz düzenli ifade ile eşleşmesine bağlı |
| olarak atanmasını mümkün kılar. Bu ortam değişkenleri sunucunun çeşitli |
| kısımlarında yapılacak eylemlere karar verirken kullanılır.</p> |
| |
| <p>Yönergeler yapılandırma dosyasında yer aldıkları sıraya göre ele |
| alınırlar. Böylece daha karmaşık dizilimler kullanılabilir, bu örnekteki |
| tarayıcı Mozilla ise <code>netscape</code> ortam değişkeni atanmakta, |
| MSIE ise atanmamaktadır.</p> |
| |
| <example> |
| BrowserMatch ^Mozilla netscape<br /> |
| BrowserMatch MSIE !netscape<br /> |
| </example> |
| </summary> |
| |
| <seealso><a href="../env.html">Apache’de Ortam Değişkenleri</a></seealso> |
| |
| <directivesynopsis> |
| <name>BrowserMatch</name> |
| <description>Ortam değişkenlerini HTTP kullanıcı arayüzüne göre belirler. |
| </description> |
| <syntax>BrowserMatch <em>düzifd [!]ort-değişkeni</em>[=<em>değer</em>] |
| [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax> |
| <contextlist><context>server config</context> |
| <context>virtual host</context><context>directory</context> |
| <context>.htaccess</context></contextlist> |
| <override>FileInfo</override> |
| |
| <usage> |
| <p><directive>BrowserMatch</directive> yönergesi <directive |
| module="mod_setenvif" >SetEnvIf</directive> yönergesinin özel bir halidir |
| ve ortam değişkenlerine <code>User-Agent</code> HTTP istek başlığının |
| değerine göre atama yapar. Aşağıdaki iki satır aynı etkiye sahiptir:</p> |
| |
| <example> |
| BrowserMatchNoCase Robot is_a_robot<br /> |
| SetEnvIfNoCase User-Agent Robot is_a_robot<br /> |
| </example> |
| |
| <p>Başka örnekler:</p> |
| |
| <example> |
| BrowserMatch ^Mozilla forms jpeg=yes browser=netscape<br /> |
| BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript<br /> |
| BrowserMatch MSIE !javascript<br /> |
| </example> |
| </usage> |
| </directivesynopsis> |
| |
| <directivesynopsis> |
| <name>BrowserMatchNoCase</name> |
| <description>Ortam değişkenlerini HTTP kullanıcı arayüzünün harf büyüklüğüne |
| duyarsız eşleşmelerine bağlı olarak belirler.</description> |
| <syntax>BrowserMatchNoCase <em>düzifd [!]ort-değişkeni</em>[=<em>değer</em>] |
| [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax> |
| <contextlist><context>server config</context> |
| <context>virtual host</context><context>directory</context> |
| <context>.htaccess</context></contextlist> |
| <override>FileInfo</override> |
| |
| <usage> |
| |
| <p><directive>BrowserMatchNoCase</directive> yönergesi sözdizimsel ve |
| anlamsal olarak <directive |
| module="mod_setenvif">BrowserMatch</directive> yönergesinin eşdeğeridir. |
| Ancak, eşleşmelerde harf büyüklüğüne duyarsızdır. Örnek:</p> |
| |
| <example> |
| BrowserMatchNoCase mac platform=macintosh<br /> |
| BrowserMatchNoCase win platform=windows<br /> |
| </example> |
| |
| <p><directive>BrowserMatch</directive> ve |
| <directive>BrowserMatchNoCase</directive> yönergeleri <directive |
| module="mod_setenvif">SetEnvIf</directive> ve <directive |
| module="mod_setenvif">SetEnvIfNoCase</directive> yönergelerinin özel |
| halleridir. Bu bakımda aşağıdaki iki satır aynı etkiye sahiptir:</p> |
| |
| <example> |
| BrowserMatchNoCase Robot is_a_robot<br /> |
| SetEnvIfNoCase User-Agent Robot is_a_robot<br /> |
| </example> |
| </usage> |
| </directivesynopsis> |
| |
| <directivesynopsis> |
| <name>SetEnvIf</name> |
| <description>Ortam değişkenlerini isteğin özniteliklerine göre atar. |
| </description> |
| <syntax>SetEnvIf <em>öznitelik |
| düzifd [!]ort-değişkeni</em>[=<em>değer</em>] |
| [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax> |
| <contextlist><context>server config</context> |
| <context>virtual host</context><context>directory</context> |
| <context>.htaccess</context></contextlist> |
| <override>FileInfo</override> |
| |
| <usage> |
| <p><directive>SetEnvIf</directive> yönergesi ortam değişkenlerini isteğin |
| özniteliklerine göre tanımlar. İlk bileşen olarak belirtilen |
| <code><em>öznitelik</em></code> şu dört şeyden biri olabilir:</p> |
| |
| <ol> |
| <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>); |
| örneğin: <code>Host</code>, <code>User-Agent</code>, |
| <code>Referer</code> ve <code>Accept-Language</code>. Bir düzenli |
| ifade kullanılarak birden fazla istek başlığı belirtilebilir.</li> |
| |
| <li>İsteğin aşağıdaki bileşenlerinden biri: |
| <ul> |
| <li><code>Remote_Host</code> - isteği yapan istemcinin konak ismi |
| (varsa)</li> |
| |
| <li><code>Remote_Addr</code> -isteği yapan istemcinin IP adresi</li> |
| |
| <li><code>Server_Addr</code> - isteği alan sunucunun IP adresi |
| (sadece 2.0.43 sonrası sürümler için)</li> |
| |
| <li><code>Request_Method</code> - kullanılan yöntemin ismi |
| (<code>GET</code>, <code>POST</code>, vs.)</li> |
| |
| <li><code>Request_Protocol</code> - İsteğin yapıldığı protokolün |
| ismi ve numarası ("HTTP/0.9", "HTTP/1.1" gibi)</li> |
| |
| <li><code>Request_URI</code> - HTTP istek satırında belirtilen |
| özkaynak; genellikle sorgu dizgesi olmaksızın şema ve konak ismini |
| içeren bir URL parçasıdır. Sorgu dizgeleriyle eşleşmeler hakkında |
| ayrıntılı bilgi edinmek için <module>mod_rewrite</module> |
| modülünün <directive module="mod_rewrite">RewriteCond</directive> |
| yönergesinin açıklamasına bakınız.</li> |
| </ul> |
| </li> |
| |
| <li>İstek ile evvelce ilişkilendirilmiş bir ortam değişkeninin ismi. Bu |
| sayede önceki bir eşleşmenin sonucuna karşı yeni bir sınama yapma |
| imkanı ortaya çıkar. Böyle bir sınama için sadece evvelce |
| <code>SetEnvIf[NoCase]</code> yönergeleri ile yapılmış atamalardaki |
| ortam değişkenleri kullanılabilir. ‘Evvelce’ derken, sunucu genelinde |
| veya bölüm içinde bu yönergeden önce yer alan |
| <code>SetEnvIf[NoCase]</code> yönerge satırları kastedilmektedir. |
| Ortam değişkenlerinin dikkate alınabilmesi için istek öznitelikleri |
| arasında hiçbir eşleşme olmaması ve <code><em>öznitelik</em></code> |
| olarak bir düzenli ifade belirtilmemiş olması gerekir.</li> |
| |
| <li>Nesne kimliği <code><em>oid</em></code> olan bir SSL istemci |
| sertifikası eklentisine bir başvuru. SSL olarak yapılmamış bir istekte |
| veya yapılandırılmış bir <code><em>oid</em></code>’in yokluğunda |
| hiçbir değişken ataması yapılmaz. Birden fazla |
| <code><em>oid</em></code> söz konusu ise aralarına virgül |
| (<code>','</code>) konarak ilgili dizgeler birleştirilir. |
| <code><em>oid</em></code> dizge değerli bir eklentiyi |
| betimlemelidir.</li> |
| </ol> |
| |
| <p>İkinci bileşen (<code><em>düzifd</em></code>) bir <glossary |
| ref="regex">düzenli ifade</glossary>dir. <code><em>düzifd</em></code> |
| ile <code><em>öznitelik</em></code> eşleştiği takdirde yönergenin kalan |
| bileşenleri değerlendirmeye alınır.</p> |
| |
| <p>Kalan bileşenler atanacak ortam değişkenlerinin isimleri ve isteğe |
| bağlı olarak bunlara atanacak değerlerden oluşur. Bunlar şöyle |
| belirtilebilir:</p> |
| |
| <ol> |
| <li><code><em>değişken-adı</em></code> veya</li> |
| |
| <li><code>!<em>değişken-adı</em></code> ya da </li> |
| |
| <li><code><em>değişken-adı</em>=<em>değer</em></code></li> |
| </ol> |
| |
| <p>İlk biçemde değişkene "1" değeri atanır. İkincisinde atanmış bir |
| değişken atanmamış yapılır. Üçüncüsünde ise değişkene belirtilen |
| <code><em>değer</em></code> bire bir atanır. 2.0.52 sürümünden itibaren |
| parantezli düzenli ifadelerin sonuçları ile değiştirilmek üzere |
| <code><em>value</em></code> içinde <code>$1</code>..<code>$9</code> |
| gösterimleri tanınmaktadır.</p> |
| |
| <example><title>Örnek:</title> |
| SetEnvIf Request_URI "\.gif$" nesne_bir_resim=gif<br /> |
| SetEnvIf Request_URI "\.jpg$" nesne_bir_resim=jpg<br /> |
| SetEnvIf Request_URI "\.xbm$" nesne_bir_resim=xbm<br /> |
| :<br /> |
| SetEnvIf Referer belgeler\.alanismi\.mesela\.dom dahili_site_istendi<br /> |
| :<br /> |
| SetEnvIf object_is_image xbm XBIT_PROCESSING=1<br /> |
| :<br /> |
| SetEnvIf OID("2.16.840.1.113730.1.13") "(.*)" NetscapeComment=$1<br /> |
| :<br /> |
| SetEnvIf ^TS* ^[a-z].* TS_VAR<br /> |
| </example> |
| |
| <p>İlk üçünde istek bir resim dosyası için yapılmışsa |
| <code>nesne_bir_resim</code> ortam değişkeni atanmakta, dördüncüsünde |
| istenen sayfa <code>belgeler.alanismi.mesela.dom</code> adlı sitede |
| bulunuyorsa <code>dahili_site_istendi</code> ortam değişkeni |
| atanmaktadır.</p> |
| |
| <p>Altıncı örnekte <code>NetscapeComment</code> ortam değişkenine ilgili |
| SSL istemci sertifikası alanındaki (varsa) dizge atanmaktadır.</p> |
| |
| <p>Son örnekte ise istekte "TS" ile başlayıp [a-z] arasındaki |
| karakterlerle devam eden bir başlık alanı varsa <code>TS_VAR</code> |
| ortam değişkeni atanmaktadır.</p> |
| </usage> |
| |
| <seealso><a href="../env.html">Apache’de Ortam Değişkenleri</a> belgesinde |
| daha fazla örnek bulunabilir.</seealso> |
| </directivesynopsis> |
| |
| <directivesynopsis> |
| <name>SetEnvIfExpr</name> |
| <description>Sets environment variables based on an ap_expr expression</description> |
| <contextlist><context>server config</context><context>virtual host</context><context>directory</context><context>.htaccess</context></contextlist> |
| <usage><p>Documentation not yet translated. Please see English version of document.</p></usage> |
| </directivesynopsis> |
| |
| <directivesynopsis> |
| <name>SetEnvIfNoCase</name> |
| <description>Ortam değişkenlerini isteğin özniteliklerinde harf büyüklüğüne |
| bağlı olmaksızın yapılmış tanımlara göre atar.</description> |
| <syntax>SetEnvIfNoCase <em>öznitelik |
| düzifd [!]ort-değişkeni</em>[=<em>değer</em>] |
| [[!]<em>ort-değişkeni</em>[=<em>değer</em>]] ...</syntax> |
| <contextlist><context>server config</context> |
| <context>virtual host</context><context>directory</context> |
| <context>.htaccess</context></contextlist> |
| <override>FileInfo</override> |
| <compatibility>Apache 1.3 ve sonrasında mevcuttur.</compatibility> |
| |
| <usage> |
| <p><directive>SetEnvIfNoCase</directive> yönergesi sözdizimsel ve anlamsal |
| olarak <directive module="mod_setenvif">SetEnvIf</directive> |
| yönergesinin eşdeğeridir. Ancak, eşleşmelerde harf büyüklüğüne |
| duyarsızdır. Örnek:</p> |
| |
| <example> |
| SetEnvIfNoCase Host Apache\.Org site=apache |
| </example> |
| |
| <p>Burada, <code>Host:</code> HTTP istek başlığında |
| <code>Apache.Org</code>, <code>apache.org</code> veya harf büyüklüğünce |
| farklı benzerleri belirtilmişse <code>site</code> ortam değişkenine |
| "<code>apache</code>" değeri atanmaktadır.</p> |
| </usage> |
| </directivesynopsis> |
| </modulesynopsis> |