mirror of
				https://github.com/apache/httpd.git
				synced 2025-11-03 17:53:20 +03:00 
			
		
		
		
	git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1331236 13f79535-47bb-0310-9956-ffa450edef68
		
			
				
	
	
		
			307 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			307 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version="1.0"?>
 | 
						||
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
 | 
						||
<?xml-stylesheet type="text/xsl" href="../style/manual.tr.xsl"?>
 | 
						||
<!-- English Revision: 1180828:1331227 (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ü dahili 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 eylemlerin yanında CGI betiklerinde ve SSI
 | 
						||
      sayfalarında kullanılabilir hale gelmelerine karar verilirken
 | 
						||
      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 HTTP Sunucusundaki 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>
 | 
						||
    </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
 | 
						||
      Apache httpd 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 ^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>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 HTTP Sunucusundaki Ortam Değişkenleri</a>
 | 
						||
belgesinde daha fazla örnek bulunabilir.</seealso>
 | 
						||
</directivesynopsis>
 | 
						||
 | 
						||
<directivesynopsis>
 | 
						||
<name>SetEnvIfExpr</name>
 | 
						||
<description>Bir ap_expr ifadesine dayanarak ortam değişkenlerine değer atar</description>
 | 
						||
<syntax>SetEnvIfExpr <em>ifade
 | 
						||
    [!]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>SetEnvIfExpr</directive> yönergesi bir
 | 
						||
      <directive type="section">If</directive> <code>ap_expr</code> ifadesine
 | 
						||
      dayanarak ortam değişkenlerine değer atar. Bu ifadeler çalışma anında
 | 
						||
      değerlendirilirerek <directive>SetEnvIf</directive> yönergesindeki gibi
 | 
						||
      <em>ort-değişkeni</em>ne uygulanır.</p>
 | 
						||
 | 
						||
<example>
 | 
						||
    SetEnvIfExpr "tolower(req('X-Sendfile')) == 'd:\images\very_big.iso')" iso_delivered
 | 
						||
</example>
 | 
						||
 | 
						||
    <p>Burada uygulamamızın her <code>X-Sendfile</code> göndermeye çalışmasında
 | 
						||
      ortam değişkenine <code>iso_delivered</code> değeri atanmaktadır.</p>
 | 
						||
 | 
						||
    <p>Uzak IP adresi RFC 1918'e göre özel bir adres ise rfc1918 değişkenine 1
 | 
						||
      atanması daha kullanışlı bir örnek olurdu:</p>
 | 
						||
 | 
						||
<example>
 | 
						||
    SetEnvIfExpr "-R '10.0.0.0/8' || -R '172.16.0.0/12' || -R '192.168.0.0/16'" rfc1918
 | 
						||
</example>
 | 
						||
</usage>
 | 
						||
 | 
						||
<seealso><a href="../expr.html">Expressions in Apache HTTP Server</a>,
 | 
						||
for a complete reference and more examples.</seealso>
 | 
						||
<seealso><directive type="section">If</directive> can be used to achive similar
 | 
						||
results.</seealso>
 | 
						||
<seealso><module>mod_filter</module></seealso>
 | 
						||
</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>
 | 
						||
 | 
						||
<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 Example\.Org site=example
 | 
						||
    </example>
 | 
						||
 | 
						||
    <p>Burada, <code>Host:</code> HTTP istek başlığında
 | 
						||
      <code>Example.Org</code>, <code>example.org</code> veya harf büyüklüğünce
 | 
						||
      farklı benzerleri belirtilmişse <code>site</code> ortam değişkenine
 | 
						||
      "<code>example</code>" değeri atanmaktadır.</p>
 | 
						||
</usage>
 | 
						||
</directivesynopsis>
 | 
						||
</modulesynopsis>
 |