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 netscape
ortam değişkeni atanmakta,
MSIE ise atanmamaktadır.
User-Agent
HTTP istek başlığının
değerine göre atama yapar. Aşağıdaki iki satır aynı etkiye sahiptir:
Başka örnekler:
öznitelik
şu dört şeyden biri olabilir:
Host
, User-Agent
,
Referer
ve Accept-Language
. Bir düzenli
ifade kullanılarak birden fazla istek başlığı belirtilebilir.Remote_Host
- isteği yapan istemcinin konak ismi
(varsa)Remote_Addr
-isteği yapan istemcinin IP adresiServer_Addr
- isteği alan sunucunun IP adresi
(sadece 2.0.43 sonrası sürümler için)Request_Method
- kullanılan yöntemin ismi
(GET
, POST
, vs.)Request_Protocol
- İsteğin yapıldığı protokolün
ismi ve numarası ("HTTP/0.9", "HTTP/1.1" gibi)Request_URI
- 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 SetEnvIf[NoCase]
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
SetEnvIf[NoCase]
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 öznitelik
olarak bir düzenli ifade belirtilmemiş olması gerekir.İkinci bileşen (düzifd
) bir düzifd
ile öznitelik
eşleştiği takdirde yönergenin kalan
bileşenleri değerlendirmeye alınır.
Kalan bileşenler atanacak ortam değişkenlerinin isimleri ve isteğe bağlı olarak bunlara atanacak değerlerden oluşur. Bunlar şöyle belirtilebilir:
değişken-adı
veya!değişken-adı
ya da değişken-adı=değer
İ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
değer
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 value
içinde $1
..$9
gösterimleri tanınmaktadır.
İlk üçünde istek bir resim dosyası için yapılmışsa
nesne_bir_resim
ortam değişkeni atanmakta, dördüncüsünde
istenen sayfa belgeler.alanismi.mesela.dom
adlı sitede
bulunuyorsa dahili_site_istendi
ortam değişkeni
atanmaktadır.
Son örnekte ise istekte "TS" ile başlayıp [a-z] arasındaki
karakterlerle devam eden bir başlık alanı varsa TS_VAR
ortam değişkeni atanmaktadır.
ap_expr
ifadesine
dayanarak ortam değişkenlerine değer atar. Bu ifadeler çalışma anında
değerlendirilirerek
Burada uygulamamızın her X-Sendfile
göndermeye çalışmasında
ortam değişkenine iso_delivered
değeri atanmaktadır.
Uzak IP adresi RFC 1918'e göre özel bir adres ise rfc1918 değişkenine 1 atanması daha kullanışlı bir örnek olurdu:
Burada, Host:
HTTP istek başlığında
Example.Org
, example.org
veya harf büyüklüğünce
farklı benzerleri belirtilmişse site
ortam değişkenine
"example
" değeri atanmaktadır.