From: André Malo The Apache HTTP Server is a modular program where the
@@ -308,7 +309,8 @@ $ apxs -i -a -n foo mod_foo.la
Apache HTTP Sunucusu Sürüm 2.2 Apache HTTP Sunucusu modüler bir program olup, yönetici sadece bir
+ grup modül seçerek sunucuya iÅlevsellik ekleyebilir. Modüller sunucunun
+ derlenmesi sırasında doÄrudan Bu belgede DSO modüllerinin kullanımının yanında teorisine de
+ deÄinilecektir. Apache modüllerini yüklemek için DSO desteÄi, Apache çekirdeÄine
+ duraÄan olarak ilintilenerek derlenmiÅ olan Apache modülleri için (özellikle üçüncü parti modüller için) DSO
+ dosyası üretimini kolaylaÅtırmak amacıyla Apache 2.xâin DSO özelliklerine bir giriÅ olarak burada kısaca bir
+ bilgi vermekle yetinilecektir: Tüm durumlarda derlenen paylaÅımlı modülü Apacheânin etkin kılabilmesi
+ için Günümüzün Unix türevlerinde var olan Åık bir mekanizma sayesinde
+ çalıÅtırılabilir bir programın adres uzayına çalıÅma anında yüklenmek
+ veya ilintilenmek üzere Devingen PaylaÅımlı Nesneler (DSO -
+ Dynamic Shared Object) adı verilen, özel bir biçem kullanarak kodlanmıÅ
+ program parçaları oluÅturulabilir. Bu yükleme normalde iki yolla yapılabilir: Ya çalıÅtırılabilir
+ programın baÅlatılması sırasında yüklenen İlk yöntemde kullanılan DSOâlara genelde paylaÅımlı
+ kütüphaneler veya DSO kütüphaneleri adı verilir ve
+ bunların dosyaları ÃalıÅtırılabilir program içindeki simgelere normalde DSO içinden
+ atıfta bulunulmaz (genel kod kütüphanesinin baÅka programlarca da
+ kullanılması nedeniyle). Bu bakımdan DSO tarafında böyle bir çözümleme
+ yapılmaz. ÃalıÅtırılabilir program da DSOâdaki simgeleri kendisi
+ çözümlemeye uÄraÅmaz, bu iÅlemlerden tamamen Unix yükleyicisi
+ ( İkinci yöntemde kullanılan DSOâlara yine paylaÅımlı
+ kütüphaneler veya DSO kütüphaneleri adı verilir fakat
+ bunların dosyaları geçerli kabule göre Son olarak, DSOânun programlama arayüzünün getirilerinden yararlanmak
+ amacıyla çalıÅtırılabilir program, daha sonra daÄıtım tabloları vb.
+ yerlerde kullanmak üzere DSO mekanizmasının bu basit gibi görünen iÅleyiÅinde zorluk içeren bir
+ adım Åudur (baÅkaları da olabilir): Bir programın iÅlevselliÄini
+ geniÅletmek için DSO kullanılırken (ikinci yöntem) çalıÅtırılabilir
+ programdan DSO için simgelerin çözümlenmesi. ZorluÄun sebebi,
+ "tersine çözümleme" yapılmasıdır; çalıÅtırılabilir programın simge
+ kümesindeki DSO simgeleri kütüphane tasarımına aykırı bir Åekilde
+ çözümlenir ve bu uygulama tüm platformlarda hazır olarak
+ desteklenmediÄi gibi standartlaÅmıŠda deÄildir. Geçer uygulamada
+ çalıÅtırılabilir programın evrensel simgeleri çoÄunlukla yeniden dıÅa
+ verilmez ve bu bakımdan bir DSO içinde kullanılmaları uygun deÄildir.
+ Esas sorun, çalıÅtırılabilir bir programın iÅlevselliÄini çalıÅma
+ anında geniÅletmek için DSO kullanımı sırasında ilintileyicinin tüm
+ evrensel simgeleri dıÅa vermesini zorlamanın bir yolunu bulmaktır. PaylaÅımlı kütüphane yaklaÅımı bu bakımdan türünün tek örneÄidir,
+ çünkü DSO mekanizması özellikle bunun için tasarlanmıÅtır, dolayısıyla
+ iÅletim sisteminin saÄladıÄı hemen hemen tüm kütüphaneler için
+ kullanılabilir. DiÄer taraftan, bir programın iÅlevselliÄini
+ geniÅletmek için paylaÅımlı nesne kullanımı çoÄu program tarafından
+ kullanılan bir Åey deÄildir. 1998 itibariyle, DSO nesneleriyle çalıÅma anında çalıÅtırılabilir
+ program iÅlevselliÄini geniÅleten baÅlıca birkaç yazılım paketi vardır:
+ Perl 5 (XS mekanizması ve DynaLoader modülü üzerinden), Netscape
+ Sunucusu, vd. 1.3 sürümünden itibaren Apache de bu gruba katıldı. Ãünkü
+ Apache, modül kavramını zaten program iÅlevselliÄini geniÅletmek için
+ kullanıyordu ve temel iÅlevselliÄine dıŠmodülleri ilintilemek için
+ dahili olarak daÄıtım listesine dayalı bir yaklaÅım kullanmaktaydı.
+ Dolayısıyla Apache, modüllerini çalıÅma anında yüklemek için DSO
+ kullanmaya baÅtan yazgılıydı. Yukarıda bahsedilen DSOâya dayalı özelliklerin getirileri
+ Åunlardır: DSO kullanımının götürüleri ise Åunlardır: The Apache HTTP Server provides a mechanism for storing
@@ -67,20 +68,20 @@
For additional flexibility, the directives provided by
- mod_setenvif allow environment variables to be set on a
- per-request basis, conditional on characteristics of particular
+ Finally, mod_unique_id sets the environment variable
- Finally, Server-parsed (SSI) documents processed by mod_include's
+ Server-parsed (SSI) documents processed by
+ Access to the server can be controlled based on the value of
environment variables using the Environment variables can be logged in the access log using
the The The When set to a value of "1", this variable disables the DEFLATE
- output filter provided by When set to a value of "1", this variable disables the
+ 
Devingen PaylaÅımlı Nesne DesteÄi
+
+
+ httpd programının
+ içinde derlenebileceÄi gibi Devingen PaylaÅımlı Nesneler (DSO - Dynamic
+ Shared Object) halinde httpd programından ayrı
+ olarak da derlenebilir. DSO modülleri sunucunun derlenmesi sırasında
+ derlenebileceÄi gibi ayrı olarak derlenip daha sonra Apache Eklenti
+ Aracı (Apache Extension Tool) apxs programı
+ kullanılarak sunucuya eklenebilir.Gerçeklenim
+
+
+
+ İlgili Modüller İlgili Yönergeler mod_so
+ adında bir modül tarafından saÄlanır. core modülünden
+ baÅka, bir DSO modülü olamayan tek modül mod_so
+ modülüdür. Hemen hemen tüm diÄer Apache modülleri kurulum belgesinde de açıklandıÄı gibi
+ configure betiÄinin
+ --enable-modül=shared seçeneÄi her modül için ayrı
+ ayrı belirtilerek birer DSO modülü olarak derlenebilir. DerlenmiÅ
+ modüller mod_filanca.so biçeminde birer DSO ismi alırlar ve
+ her biri istenirse httpd.conf dosyasında
+ mod_so modülünün LoadModule yönergesiyle belirtilerek sunucu baÅlatılırken
+ veya yeniden baÅlatılırken sunucuya yüklenebilir.apxs
+ (APache eXtenSion) adında yeni bir destek programı
+ kullanılmaktadır. Bu program Apache modüllerini Apache kaynak aÄacından
+ ayrı olarak derlemek için kullanılabilir. Fikir basittir: Apache
+ derlenirken DSO dosyalarını derlemek için platforma baÄımlı
+ derleyici ve ilintileyici seçenekleri apxs
+ programının içine konur ve Apacheânin make install ile
+ kurulumu sırasında Apache C baÅlık dosyaları da kurulur. Böylece
+ kullanıcı Apache daÄıtımının kaynak aÄacına ihtiyaç duymadan ve
+ platforma baÄımlı derleyici ve ilintileyici seçeneklerini bilmek zorunda
+ kalmadan istediÄi Apache modülünü apxs programını
+ kullanarak derleyebilir.Kullanıcı Ãzeti
+
+
+
+
+ mod_filanca.c dosyasında daÄıtılan bir
+ özgün Apache modülünü mod_filanca.so isminde bir
+ DSO modülü olarak derlemek ve kurmak için Åöyle yapılır:
+
+
+ $ ./configure --prefix=/kurulum/yeri --enable-filanca=shared
+ $ make install
+mod_filanca.c dosyasında daÄıtılan bir
+ üçüncü parti Apache modülünü mod_filanca.so
+ isminde bir DSO modülü olarak derlemek ve kurmak için Åöyle yapılır:
+
+
+$ ./configure --add-module=modül-türü:/bir/kurulum/yeri/mod_filanca.c \
+
+ --enable-filanca=shared
+
+$ make install
+
+$ ./configure --enable-so
+$ make install
+mod_filanca.c dosyasında daÄıtılan bir
+ üçüncü parti Apache modülü mod_filanca.so
+ isminde bir DSO modülü olarak Apache kaynak aÄacının dıÅında
+ apxs kullanarak derlemek ve kurmak için Åöyle
+ yapılır:
+
+
+$ cd /bir/kurulum/yeri
+$ apxs -c mod_filanca.c
+$ apxs -i -a -n filanca mod_filanca.la
+httpd.conf dosyasında o modül için bir LoadModule yönergesi bulunmalıdır.Artalan Bilgisi
+
+ ld.so adlı bir
+ sistem programınının devingen olarak yüklenmesi ile ya da
+ çalıÅtırılabilir programın içinden Unix yükleyicisine programsal sistem
+ arayüzü saÄlayan dlopen()/dlsym() sistem çaÄrılarının elle
+ yapılması suretiyle.libfilanca.so veya
+ libfilanca.so.1.2 biçiminde isimlendirilir. Belli bir
+ sistem dizininde (normalde /usr/lib) bulunurlar ve derleme
+ sırasında ilintileyici komutuna -lfilanca Åeklinde
+ belirtilerek çalıÅtırılabilir programla ilintilenirler. DoÄrudan
+ çalıÅtırılabilir koda eklenen bu kodlar Unix yükleyicisinin programın
+ baÅlatılması sırasında kütüphaneyi /usr/lib altında
+ libfilanca.so adıyla bulabilmesini saÄlar. Kütüphanelerin
+ aranacaÄı yerler ya -R gibi bir ilintileyici seçeneÄi ile
+ koda eklenir ya da arama yolları LD_LIBRARY_PATH ortam
+ deÄiÅkeni aracılıÄıyla yapılandırılır. Böylece çalıÅtırılabilir
+ programda henüz çözümlenmemiŠsimgeler DSO içinde bulunarak
+ çözümlenebilir.ld.so) sorumludur. (Aslında, ld.soâyu
+ çaÄıracak kod, her çalıÅtırılabilir programın içine ilintilenmiÅ
+ (duraÄan deÄil) baÅlatma kodunun bir parçasıdır.) Programlar tarafından
+ ortaklaÅa kullanılan kütüphanelerin devingen olarak yüklenmesinin sebebi
+ basittir: Kütüphane kodu libc.so gibi bir sistem
+ kütüphanesine bir kere kaydedilip disk alanından yer kazanılmıÅ
+ olur.filanca.so gibi
+ isimlendirilse de genelde keyfi olarak seçilen bir dosya uzantısı
+ kullanılarak isimlendirilirler. Bu dosyalar genellikle programa özel bir
+ dizinde dururlar ve bu dosyaları kullanacak olan çalıÅtırılabilir
+ programla aralarında özdevimli olarak baÄ kurulmamıÅtır. Bunun yerine,
+ çalıÅtırılabilir program DSOâyu çalıÅma anında dlopen()
+ sayesinde kendi adres uzayına ekler. ÃalıÅtırılabilir program için
+ DSOâdaki simgeler bu sırada çözümlenmez. Ãzdevimli olarak devreye
+ giren Unix yükleyicisi, (varsa) artakalan simgeleri, çalıÅtırılabilir
+ ihraç edilen simge kümelerini (ve özellikle her yerde hazır ve nazır
+ libc.so içindeki tüm simgeleri) kullanarak çözümler. Bu
+ yolla DSO, çalıÅtırılabilir programın simge kümesi bilgilerini sanki
+ kendisine baÅtan duraÄan olarak ilintilenmiÅ gibi ulaÅabilir.dlsym() üzerinden DSOâdaki belli
+ simgeleri çözümlemek zorundadır. BaÅka bir deyiÅle: ÃalıÅtırılabilir
+ program ihtiyaç duyduÄu her simgeyi kullanmak için kendisi çözümleme
+ yapmak zorundadır. Böyle bir mekanizmanın getirisi, programın isteÄe
+ baÄlı parçalarının gerekli olana kadar yüklenmemesidir (böylece daha az
+ bellek alanı kullanılır). GerektiÄi zaman programın iÅlevselliÄini
+ arttırmak amacıyla bu parçalar devingen olarak programa
+ yüklenebilir.Getiriler ve Götürüler
+
+
+
+
+ configure
+ seçenekleriyle birleÅtirilmek yerine httpd.conf içinde
+ LoadModule yönergeleri
+ sayesinde çalıÅma anında birleÅtirilebilmektedir. Bu yolla, örneÄin
+ tek bir Apache kurulumuyla birbirinden farklı yapılandırmalara sahip
+ çok sayıda sunucu çalıÅtırmak mümkündür. (standart veya SSL sürümü;
+ basitleÅtirilmiÅ veya güçlendirilmiÅ sürümü [mod_perl, PHP3],
+ vs.)apxs çifti sayesinde
+ Apache kaynak aÄacının dıÅında derleyip modülün yeni bir sürümünü bir
+ apxs -i komutunun ardından apachectl
+ restart yaparak çalıÅan bir Apache sunucusunda denemek daha
+ kolay hale getirilmiÅtir.
+
+
+ld -lfilanca) DSO mekanizmasını tüm modül türleri için
+ kullanamazsınız (örneÄin a.out temelli platformlar bu iÅlevselliÄi
+ ELF temelli platformlar kadar iyi saÄlamaz). BaÅka bir deyiÅle, DSO
+ dosyaları olarak derlenmiÅ modüllerin kullanabileceÄi simgeler ya
+ Apache temel kodunda vardır ya Apache temel kodunun kullandıÄı C
+ kütüphanesinde (libc) ve diÄer duraÄan ve devingen
+ kütüphanelerde vardır ya da konumdan baÄımsız kodu içeren
+ duraÄan kütüphane arÅivlerinde (libfilanca.a)
+ vardır. DiÄer modülleri kullanmak için tek Åansınız ya Apache
+ çekirdeÄinin modüle bir atıf içermesini saÄlamak ya da modül kodunu
+ dlopen() vasıtasıyla yüklemektir.mod_setenvif allow environment variables to be set
+ on a per-request basis, conditional on characteristics of particular
requests. For example, a variable could be set only when a
specific browser (User-Agent) is making a request, or only when
a specific Referer [sic] header is found. Even more flexibility
- is available through the mod_rewrite's RewriteRule which uses the
+ is available through the mod_rewrite's RewriteRule which uses the
[E=...] option to set environment variables.Unique Identifiers
- UNIQUE_ID for each request to a value which is
+ mod_unique_id sets the environment
+ variable UNIQUE_ID for each request to a value which is
guaranteed to be unique across "all" requests under very
specific conditions.SetEnv directive runs
late during request processing meaning that directives such as
SetEnvIf and RewriteCond will not see the
@@ -143,7 +144,8 @@
SSI Pages
- mod_include's
INCLUDES filter can print environment variables
using the echo element, and can use environment
variables in flow control elements to makes parts of a page
@@ -158,9 +160,9 @@
allow from env=
and deny from env= directives. In combination with
- SetEnvIf, this
- allows for flexible control of access to the server based on
- characteristics of the client. For example, you can use these
+ SetEnvIf, this
+ allows for flexible control of access to the server based on
+ characteristics of the client. For example, you can use these
directives to deny access to a particular browser (User-Agent).
LogFormat
option %e. In addition, the decision on whether
- or not to log requests can be made based on the status of
- environment variables using the conditional form of the
+ or not to log requests can be made based on the status of
+ environment variables using the conditional form of the
CustomLog
- directive. In combination with SetEnvIf this allows for flexible control of which
- requests are logged. For example, you can choose not to log
+ directive. In combination with SetEnvIf this allows for flexible control of which
+ requests are logged. For example, you can choose not to log
requests for filenames ending in gif, or you can
choose to only log requests from clients which are outside your
subnet.URL Rewriting
- %{ENV:...} form of TestString in
- the RewriteCond
- allows mod_rewrite's rewrite
- engine to make decisions conditional on environment variables.
- Note that the variables accessible in mod_rewrite without the
- ENV: prefix are not actually environment
- variables. Rather, they are variables special to mod_rewrite
+ %{ENV:variable} form of
+ TestString in the RewriteCond allows mod_rewrite's rewrite
+ engine to make decisions conditional on environment variables. Note
+ that the variables accessible in mod_rewrite without
+ the ENV: prefix are not actually environment variables.
+ Rather, they are variables special to mod_rewrite
which cannot be accessed from other modules.gzip-only-text/html
- mod_deflate for
- content-types other than text/html. If you'd rather
+ DEFLATE output filter provided by
+ mod_deflate for content-types other than
+ text/html. If you'd rather
use statically compressed files, mod_negotiation
evaluates the variable as well (not only for gzip, but for all
encodings that differ from "identity").
However, if the redirection is to a page that uses a different character set, some broken browser versions will try to use the character set from the redirection text rather than the actual page. This can result in Greek, for instance, being incorrectly rendered.
+Setting this environment variable causes Apache to omit the character set for the redirection text, and these broken browsers will then correctly use that of the destination page.
Sending error pages without a specified character set may allow a cross-site-scripting attack for existing browsers (MSIE) @@ -392,11 +396,13 @@ BrowserMatch "JDK/1\.0" force-response-1.0
-SetEnvIf Request_URI \.gif image-request -SetEnvIf Request_URI \.jpg image-request -SetEnvIf Request_URI \.png image-request -CustomLog logs/access_log common env=!image-request
+ SetEnvIf Request_URI \.gif image-request
+ SetEnvIf Request_URI \.jpg image-request
+ SetEnvIf Request_URI \.png image-request
+ CustomLog logs/access_log common env=!image-request
+
-SetEnvIf Referer "^http://www\.example\.com/" local_referal -# Allow browsers that do not send Referer info -SetEnvIf Referer "^$" local_referal -<Directory /web/images> - Order Deny,Allow - Deny from all - Allow from env=local_referal -</Directory>
+ SetEnvIf Referer "^http://www\.example\.com/" local_referal
+ # Allow browsers that do not send Referer info
+ SetEnvIf Referer "^$" local_referal
+ <Directory /web/images>
+
+ Order Deny,Allow
+ Deny from all
+ Allow from env=local_referal
+
+ </Directory>
+
For more information about this technique, see the - "Keeping Your Images from Adorning Other Sites" tutorial on ServerWatch.
+ "Keeping Your Images from Adorning Other Sites" tutorial on + ServerWatch. diff --git a/docs/manual/env.html.ja.utf8 b/docs/manual/env.html.ja.utf8 index 9ef314ea14b..a753b4041b7 100644 --- a/docs/manual/env.html.ja.utf8 +++ b/docs/manual/env.html.ja.utf8 @@ -20,7 +20,8 @@Apache HTTP Sunucusu Sürüm 2.2
+
Apache HTTP Sunucusunda bilgiyi deÄiÅkenlerde saklamak için ortam + deÄiÅkenleri adı verilen bir mekanizma bulunur. Saklanan bu bilgi + eriÅim denetimi, günlük kaydı gibi çeÅitli iÅlemleri denetlemekte + kullanılabilir. DeÄiÅkenler ayrıca, CGI betikleri gibi harici + uygulamalarla iletiÅim mekanizması olarak da kullanılabilir. Bu belgede + bu deÄiÅkenler üzerindeki iÅlemlere ve kullanım Åekillerine + deÄinilmiÅtir.
+ +Bu deÄiÅkenlere ortam deÄiÅkenleri dense de iÅletim sisteminin + ortam deÄiÅkenleri gibi deÄillerdir. Bunlar sadece Apache ortamında + geçerli deÄiÅkenler olup iÅletim sisteminin bu deÄiÅkenlerden haberi + olmaz. Sadece CGI betikleri ve SSI sayfaları gibi harici uygulamalar + tarafından üretilen ortam deÄiÅkenleri sistem ortamının deÄiÅkenleri + haline gelirler. İÅletim sistemi ortamına çalıÅmakta olan sunucudan + müdahale etmek isterseniz iÅletim sisteminizin kabuÄu tarafından saÄlanan + standart ortam müdahale mekanizmalarını kullanmalısınız.
+| İlgili Modüller | İlgili Yönergeler |
|---|---|
Apache ortamında bir ortam deÄiÅkenine müdahale etmenin en temel
+ yolu hiçbir koÅula tabi olmayan SetEnv yönergesini kullanmaktır. Bu deÄiÅkenleri Apache
+ baÅlatılırken sistem ortam deÄiÅkenleri haline getirmek için
+ PassEnv yönergesi
+ kullanılabilir.
EsnekliÄi arttırmak için, mod_setenvif modülü ile
+ isteÄin özelliklerine uygun olarak her isteÄe özel deÄiÅkenler
+ atayabilmek mümkün kılınmıÅtır. ÃrneÄin, bir deÄiÅken sadece isteÄi
+ yapan tarayıcıya özgü bir deÄerle veya sadece belli bir baÅlık
+ alanınına baÄlı olarak atanabilir. Daha da esnek bir mekanizma,
+ ortam deÄiÅkeni atamak için [E=...] seçeneÄinin
+ kullanıldıÄı mod_rewrite modülünün RewriteRule yönergesi ile
+ saÄlanmıÅtır.
Son olarak, mod_unique_id UNIQUE_ID
+ ortam deÄiÅkenine her istek için o isteÄin çok özel koÅullar altında
+ tüm diÄer istekler arasında eÅsizliÄini garanti edecek bir deÄer
+ atar.
Apache yapılandırmasıyla atanan ve kabuÄa aktarılan ortam + deÄiÅkenlerinden baÅka CGI + Belirtiminin gerektirdiÄi istekler hakkında temel bilgileri + içeren ortam deÄiÅkenlerinin CGI betikleri ve SSI sayfalarınca + atanabilmesi saÄlanmıÅtır.
+ + +suexec
+ kullanıldıÄında ortam, CGI betikleri çalıÅtırılmadan önce
+ güvenilir deÄiÅkenler kalacak Åekilde temizlenir.
+ Güvenilir deÄiÅken listesi suexec.c içinde
+ derleme sırasında tanımlanır.SetEnv yönergesi geç çalıÅtırılır,
+ yani SetEnvIf ve
+ RewriteCond gibi
+ yönergeler SetEnv ile
+ atanan deÄiÅken deÄerlerini görmezler.| İlgili Modüller | İlgili Yönergeler |
|---|---|
Ortam deÄiÅkenlerinin baÅlıca amaçlarından biri CGI betikleriyle + iletiÅim kurmaktır. Yukarıda bahsedildiÄi gibi CGI betiklerine + aktarılan ortam Apache yapılandırmasında atanan deÄiÅkenlere ek + olarak istek hakkında standart temel bilgileri de içerir. Bu konuda + ayrıntılı bilgi edinmek için CGI + ÃÄreticisine bakabilirsiniz.
+ + +Sunucu tarafında mod_include modülünün
+ INCLUDES süzgeci ile yorumlanan SSI sayfalarında ortam
+ deÄiÅkenleri echo elemanı ile basılabilir ve sayfayı
+ isteÄin özelliklerine uygun olarak oluÅturmak için ortam
+ deÄiÅkenleri akıŠdenetim elemanları içinde kullanılabilir. Apache
+ ayrıca, yukarıda bahsedildiÄi gibi standart CGI ortam deÄiÅkenli SSI
+ sayfalarını da saÄlayabilmektedir. Daha ayrıntılı bilgi edinmek için
+ SSI ÃÄreticisine bakabilirsiniz.
allow from env= ve deny from env=
+ yönergeleri sayesinde ortam deÄiÅkenlerine dayalı olarak sunucuya
+ eriÅim denetim altında tutulabilir. Bunlar SetEnvIf yönergesi ile birlikte
+ kullanılmak suretiyle sunucuya eriÅim isteÄin özelliklerine baÄlı
+ olarak daha esnek bir tarzda denetlenebilir. ÃrneÄin, belli bir
+ tarayıcının sunucuya eriÅimi bu yönergelerle engellenebilir.
Ortam deÄiÅkenleri LogFormat yönergesinin %e seçeneÄi
+ kullanılarak eriÅim günlüÄüne kaydedilebilir. Bundan baÅka,
+ CustomLog yönergesi
+ sayesinde isteklerin günlüÄe kaydedilip kaydedilmeyeceÄine ortam
+ deÄiÅkenlerine dayalı olarak karar verilmesi saÄlanabilir. Bunlar
+ SetEnvIf yönergesi ile
+ birlikte kullanılmak suretiyle günlük kayıtları isteÄin
+ özelliklerine baÄlı olarak daha esnek bir tarzda denetlenebilir.
+ ÃrneÄin, gif uzantılı dosyalar için yapılan isteklerin
+ günlüÄe kaydedilmemesi veya sadece alt aÄınızın dıÅından gelen
+ isteklerin günlüÄe kaydedilmesini isteyebilirsiniz.
Header yönergesi belli
+ bir yanıt baÅlıÄının istemciye gönderilip gönderilmeyeceÄine belli
+ bir ortam deÄiÅkeninin varlıÄına bakarak karar vermek için
+ kullanılabilir. Böylece örneÄin, belli bir baÅlıÄın istemciye
+ gönderilmesine istemciden belli bir baÅlıÄın alınıp alınmadıÄına
+ baÄlı olarak karar verilebilir.
mod_ext_filter tarafından yapılandırılan harici
+ süzgeçler ExtFilterDefine yönergesinin disableenv= ve
+ enableenv= seçenekleri kullanılarak bir ortam
+ deÄiÅkenine baÄlı olarak etkinleÅtirilebilir.
RewriteCond
+ yönergesinin SınamaDizgesi olarak kullanılan
+ %{ENV:deÄiÅken} biçemi
+ mod_rewrite yeniden yazma motorunun ortam
+ deÄiÅkenlerine baÄlı kararlar almasını mümkün kılar. Yalnız Åuna
+ dikkat ediniz: mod_rewriteâta ENV:
+ öneki kullanılmadan belirtilen deÄiÅkenler ortam deÄiÅkenleri
+ deÄillerdir. Onlar mod_rewriteâa özgü diÄer
+ modüllerden eriÅilemeyen özel deÄiÅkenlerdir.
Birlikte çalıÅabilirlik sorunları Apacheânin belli istemcilerle
+ veri alıÅveriÅi sırasında davranıÅını deÄiÅtirmesini gerektirebilir.
+ Genellikle SetEnv ve
+ PassEnv yönergelerinden
+ baÅka BrowserMatch
+ gibi yönergelerle ortam deÄiÅkenleri atanarak bunu saÄlayan
+ mekanizmaların olabildiÄince esnek davranabilmesi saÄlanabilir.
downgrade-1.0İstek, daha yüksek bir HTTP protokolüyle yapılmıŠolsa bile + HTTP/1.0 isteÄi olarak ele alınır.
+ + +force-gzipDEFLATE süzgeci etkinse tarayıcının tercih ettiÄi
+ kodlama koÅulsuz olarak yoksayılarak sıkıÅtırılmıŠçıktı
+ gönderilir.
force-no-varyİstemciye gönderilmeden önce yanıttan Vary alanının
+ çıkarılmasına sebep olur. Bazı istemciler bu alanı gerektiÄi gibi
+ yorumlayamazlar, bu deÄiÅken atanarak bu sorunla karÅılaÅılmamaya
+ çalıÅılır. Bu deÄiÅkenin atanması ayrıca
+ force-response-1.0 deÄiÅkeninin de atanmasına sebep
+ olur.
force-response-1.0HTTP/1.0 isteÄi yapan istemcilere HTTP/1.0 yanıtı verilmesini zorunlu + kılar. AOL vekillerindeki bir sorun nedeniyle gerçeklenmiÅtir. Bazı + HTTP/1.0 istemciler HTTP/1.1 yanıtlarında doÄru davranmayabilirler; bu + deÄiÅken atanarak bunların sorunları giderilebilir.
+ + + +gzip-only-text/htmlBu deÄiÅkene "1" deÄeri atandıÄında text/htmlâden
+ farklı içerik türleri için mod_deflate modülü
+ tarafından saÄlanan DEFLATE çıktı süzgeci iptal
+ edilir. SıkıÅtırılmıŠolarak saklanan dosyalar kullanıyorsanız bu
+ deÄiÅkeni mod_negotiation modülü de dikkate alır
+ (kimliÄine bakarak sadece gzip için deÄil, tüm kodlamalar için bunu
+ yapar).
no-gzipBu deÄiÅken atandıÄında, mod_deflate modülünün
+ DEFLATE süzgeci kapatılır ve
+ mod_negotiation modülü kodlanmıŠkaynak teslimatını
+ reddeder.
nokeepaliveBu deÄiÅken atandıÄında, KeepAlive yönergesi iptal edilir.
prefer-languageDeÄer olarak en, ja veya
+ x-klingon gibi bir dil kısaltması verilerek atanmıÅsa
+ mod_negotiation modülünün normal davranıÅını
+ deÄiÅtirerek belirtilen dilde bir teslimat yapılmaya çalıÅılır.
+ Böyle bir belge yoksa normal uzlaÅım süreci uygulanır.
redirect-carefullyİstemciye bir yönlendirme gönderirken sunucuyu daha dikkatli olmaya + zorlar. Bu genellikle istemcinin yönlendirmeler konusunda sorunlu + olduÄu bilindiÄi takdirde yararlı olur. Bu deÄiÅkenin gerçeklenme + sebebi, dizin kaynaklarına yönlendirmeler için DAV yöntemlerini + kullanan Microsoft'un WebFolders yazılımındaki bir sorundur.
+ + + +suppress-error-charset2.0.54 sürümünden beri mevcuttur.
+ +Apache bir isteÄe bir yönlendirme ile yanıt verdiÄinde istemci + yönlendirmeyi kendiliÄinden yapmaz veya yapamazsa kullanıcıya yanıtla + birlikte gönderilen metin gösterilir. Apache normal olarak bu metni + ISO-8859-1 ile kodlar.
+ +Ancak, yönlendirmenin yapıldıÄı sayfa farklı bir karakter kümesine + sahipse bazı tarayıcı sürümleri asıl sayfanın karakter kodlaması yerine + yönlendirmenin kodlamasını kullanmaya çalıÅırlar. Bu özellikle Yunanca + gibi dillerde hedef sayfanın hatalı yorumlanmasına yol açar.
+ +Bu ortam deÄiÅkeninin atanması Apacheânin yönlendirme için karakter + kümesi belirtmemesini saÄlamak suretiyle hatalı tarayıcıların hedef + sayfayı yanlıŠkarakter kodlamasıyla yorumlamasını önler.
+ +Hata sayfalarının bir karakter kümesi belirtilmeksizin yollanması, + HTTP/1.1 belirtimine uymayan ve karakter kümesini içeriÄe bakarak + tahmin etmeye çalıÅan tarayıcılarda (MSIE) karÅı siteden betik + saldırısı yorumuna sebep olabilir. Girdi verisindeki UTF-7 içerik + (istek betimleyici gibi) karÅı siteden betik saldırılarını engellemek + için tasarlanmıŠnormal önceleme mekanizmalarıyla öncelenmeyeceÄi için + böyle tarayıcılar UTF-7 karakter kodlaması kullanılarak kolayca + aldatılabilir.
+force-proxy-request-1.0,
+ proxy-nokeepalive, proxy-sendchunked ve
+ proxy-sendclBu yönergeler mod_proxy modülünün normal protokol
+ davranıÅını deÄiÅtirirler. Daha ayrıntılı bilgi için
+ mod_proxy belgesine bakınız.
Ãnceki sürümlerde bilinen istemci davranıÅlarına karÅı önlem olarak
+ aÅaÄıdaki satırların httpd.conf içinde bulunması
+ önerilirdi. Fakat, böyle tarayıcılar artık ortalıkta görünmediÄinden
+ bu yapılandırmaya da artık gerek kalmamıÅtır.
+# +# AÅaÄıdaki yönergeler normal HTTP yanıt davranıÅını deÄiÅtirirler. +# İlk yönerge Netscape 2.x ve kendini öyle gösteren tarayıcılar için +# kalıcı baÄlantıyı (keepalive) iptal eder. İkinci yönerge ise HTTP/1.1 +# protokolü bozuk olan ve 301/302 durum kodlu yönlendirme yanıtları +# kullanıldıÄında kalıcı baÄlantıları gerektiÄi gibi desteklemeyen +# Microsoft Internet Explorer 4.0b2 içindir. +# +BrowserMatch "Mozilla/2" nokeepalive +BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 + +# +# AÅaÄıdaki yönergeler HTTP/1.0 yanıtlarından baÅkasına yabancı olan +# tarayıcılara HTTP/1.1 yanıtlarının gönderilmesini iptal eder. +# +BrowserMatch "RealPlayer 4\.0" force-response-1.0 +BrowserMatch "Java/1\.0" force-response-1.0 +BrowserMatch "JDK/1\.0" force-response-1.0
Bu örnek resim isteklerinin eriÅim günlüÄüne yazılmasını engeller. + Bu örnek deÄiÅtirilerek belli dizinlerin veya belli konaklardan + gelen isteklerin günlüÄe kaydedilmesini engellemek amacıyla da + kullanılabilir.
+ +
+ SetEnvIf Request_URI \.gif image-request
+ SetEnvIf Request_URI \.jpg image-request
+ SetEnvIf Request_URI \.png image-request
+ CustomLog logs/access_log common env=!image-request
+
Bu örnekte sunucunuzda bulunmayan sayfalarda sunucunuzdaki
+ resimlerin kullanılmasının nasıl önleneceÄi gösterilmiÅtir. Bu
+ yapılandırma önerilmemekle birlikte nadir durumlarda iÅe yarar. Tüm
+ resimlerin /siteler/resimler dizini altında tutulduÄu
+ varsayılmıÅtır.
+ SetEnvIf Referer "^http://filan\.fesmekan\.dom/" local_referal
+ # Referrer bilgisi göndermeyen tarayıcılara izin verelim
+ SetEnvIf Referer "^$" local_referal
+ <Directory /siteler/resimler>
+
+ Order Deny,Allow
+ Deny from all
+ Allow from env=local_referal
+
+ </Directory>
+
Bu teknik hakkında daha ayrıntılı bilgi edinmek için ServerWatch + üzerindeki "DiÄer sitelerin sizin resimlerinizle donatılmasını engellemek" + belgesine bakınız.
+ +Apache HTTP Sunucusu Sürüm 2.2
+
| Açıklama: | Unix ls veya Win32 dir kabuk komutunun
+yaptıÄı gibi dizin içeriÄini listeler. |
|---|---|
| Durum: | Temel |
| Modül Betimleyici: | autoindex_module |
| Kaynak Dosyası: | mod_autoindex.c |
Bir dizin içerik dosyası iki kaynaktan gelebilir:
+ +index.html
+ adında bir dosya olarak. Dosyanın ismi DirectoryIndex yönergesi ile belirlenir ve
+ mod_dir tarafından denetlenir.AddIcon, AddIconByEncoding ve AddIconByType yönergeleri ile
+ belirlenir. Bunlar mod_autoindex tarafından
+ denetlenir.İki iÅlev birbirinden ayrı tutulmuÅtur, böylece kendiliÄinden içerik + listesi üretimi tamamen iptal edilebilir (veya deÄiÅtirilebilir).
+ +KendiliÄinden içerik listesi üretimi Options +Indexes ile
+ etkin kılınabilir. Daha fazla bilgi için Options yönergesinin açıklamasına bakınız.
IndexOptions yönergesi
+ FancyIndexing
+ seçeneÄi ile kullanılmıÅsa sütun baÅlıkları listenin sıralamasını
+ sütundaki sıralamaya göre deÄiÅtirecek hiper baÄlar haline getirilir
+ (süslü liste). Aynı baÅlıÄa peÅpeÅe tıklamak suretiyle sıralamayı
+ büyükten küçüÄe veya tersine deÄiÅtirebilirsiniz. Bu sütun baÅlıÄı
+ baÄlarının oluÅturulması IndexOptions yönergesi SuppressColumnSorting seçeneÄi ile kullanılarak
+ engellenebilir.
Boyuta göre sıralamada daima dosyanın asıl boyutuna bakılır. + Dolayısıyla ikisi de "1K" olarak gösterilen iki dosyadan 1010 baytlık + olanı küçükten büyüÄe sıralamada 1011 baytlıktan önce + gösterilecektir.
+
AddAlt
AddAltByEncoding
AddAltByType
AddDescription
AddIcon
AddIconByEncoding
AddIconByType
DefaultIcon
HeaderName
IndexIgnore
IndexOptions
IndexOrderDefault
IndexStyleSheet
ReadmeNameApache 2.0.23âte Sütun Sıralama için Sorgu Seçenekleri yeniden
+ düzenlenip tamamen yeni bir sorgu seçenekleri grubu oluÅturulmuÅtur.
+ Ãıktı üzerinde kullanıcı denetimini tamamen ortadan kaldırmak için
+ IndexOptions yönergesinin
+ IgnoreClient
+ seçeneÄi kullanılabilir.
Sütun sıralama baÅlıklarının her biri hedefi kendisi olan birer hiper + baÄ olup aÅaÄıda sıralanan sorgu seçeneklerini kullanırlar. Bu + seçeneklerin her biri her dizin içerik listesi isteÄine eklenebilir.
+ +C=N dizini dosya adına göre sıralarC=M dizini son deÄiÅiklik zamanına ve ardından dosya
+ ismine göre sıralar.C=S dizini boyuta ve ardından dosya adına göre
+ sıralarC=D dizini açıklamaya ve ardından
+ dosya adına göre sıralar.O=A artan sıralama uygulanır.O=D azalan sıralama uygulanır.F=0 listeleme basit listeleme biçiminde yapılır
+ (FancyIndexing seçeneÄi ile etkinleÅtirilen biçimde
+ deÄil)F=1 listeleme FancyIndexing seçeneÄi ile
+ etkinleÅtirilen biçimde yapılırF=2 listeleme FancyIndexing ve
+ HTMLTable seçeneÄi
+ ile etkinleÅtirilen biçimde yapılır.V=0 sürüme göre sıralama iptal edilir.V=1 sürüme göre sıralama etkin
+ kılınır.P=kalıp sadece belirtilen
+ kalıp ile eÅleÅen dosyalar istelenir.P=kalıp sorgu seçeneÄinin normalde IndexIgnore yönergesi iÅleme
+ sokulduktan sonra deÄerlendirildiÄine ve dosya isimlerinin diÄer
+ kendiliÄinden içerik listeleme koÅullarının konusu olmaya devam ettiÄine
+ dikkat ediniz. mod_autoindex modülündeki Sorgu
+ Seçenekleri çözümleyicisi tanımadıÄı bir seçeneÄe rastlar rastlamaz
+ iÅlemi durdurur. Sorgu Seçenekleri yukarıda belirtilene uygun olarak iyi
+ biçimli olmak zorundadır.
AÅaÄıdaki basit örnekte sorgu seçeneklerinin kullanımı gösterilmiÅtir.
+ Son satırda bulunan "submit" düÄmesindeki tanınmayan "X" girdisine
+ dikkat ediniz. "X=Göster" girdisi tüm seçenekler iÅlendikten sonra
+ mod_autoindex tarafından son argüman olarak ele
+ alınacak ve çözümleme iÅlemi o noktada duracaktır.
+<form action="" method="get"> + <input type="text" name="P" value="*" /> ile eÅleÅen + <select name="C"> + <option value="N" selected="selected">isme</option> + <option value="M"> deÄiÅiklik tarihine</option> + <option value="S"> boyuta</option> + <option value="D"> açıklamaya</option> + </select> göre + <select name="O"> + <option value="A" selected="selected"> artan</option> + <option value="D"> azalan</option> + </select> + <select name="V"> + <option value="0" selected="selected">normal</option> + <option value="1"> sürümlü</option> + </select> sıralamayla bir + <select name="F"> + <option value="0"> basit liste</option> + <option value="1" selected="selected"> süslü liste</option> + <option value="2"> tablolu liste</option> + </select> + <input type="submit" name="X" value="Göster" /> +</form>
| Açıklama: | Dosyaya göre seçilen simgenin yerinde gösterilecek metni belirler. + |
|---|---|
| Sözdizimi: | AddAlt metin dosya [dosya] ... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
AddAlt yönergesi, FancyIndexing seçeneÄiyle
+ üretilen dizin listesinde bir dosya simgesinin yerinde gösterilecek
+ metni belirler. dosya olarak dosya türünü
+ betimleyecek bir dosya uzantısı, dosya isminin bir kısmı, bir dosya ismi
+ kalıbı veya tam yoluyla bir dosya ismi belirtilebilir. EÄer
+ metin boÅluk karakterleri içeriyorsa tırnak içine
+ (" veya ') alınmalıdır. Simge metni, simge
+ bulunamadıÄı veya istemci resim gösteremediÄi takdirde ya da kullanıcı
+ resim yüklememeyi tercih etmiÅse gösterilir.
+ AddAlt "PDF dosya" *.pdf
+ AddAlt SıkıÅtırılmıŠ*.gz *.zip *.Z
+
| Açıklama: | Dosyanın MIME kodlamasına göre seçilen simgenin yerinde +gösterilecek metni belirler. |
|---|---|
| Sözdizimi: | AddAltByEncoding metin MIME-kodlaması
+[MIME-kodlaması] ... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
AddAltByEncoding yönergesi, FancyIndexing seçeneÄiyle
+ üretilen dizin listesinde bir dosya simgesinin yerinde gösterilecek
+ metni belirler. MIME-kodlaması olarak
+ x-compress gibi geçerli bir içerik kodlaması
+ belirtilmelidir. EÄer metin boÅluk karakterleri
+ içeriyorsa tırnak içine (" veya ')
+ alınmalıdır. Simge metni simge bulunamadıÄı veya istemci resim
+ gösteremediÄi takdirde ya da kullanıcı resim yüklememeyi tercih etmiÅse
+ gösterilir.
+ AddAltByEncoding gzip x-gzip
+
| Açıklama: | Dosyanın MIME türüne göre seçilen simgenin yerinde gösterilecek +metni belirler. |
|---|---|
| Sözdizimi: | AddAltByType metin MIME-türü
+[MIME-türü] ... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
AddAltByType yönergesi, FancyIndexing seçeneÄiyle
+ üretilen dizin listesinde bir dosya simgesinin yerinde gösterilecek
+ metni belirler. MIME-türü olarak
+ text/html gibi geçerli bir içerik türü belirtilmelidir.
+ EÄer metin boÅluk karakterleri içeriyorsa tırnak
+ içine (" veya ') alınmalıdır. Simge metni
+ simge bulunamadıÄı veya istemci resim gösteremediÄi takdirde ya da
+ kullanıcı resim yüklememeyi tercih etmiÅse gösterilir.
+ AddAltByType 'salt metin' text/plain
+
| Açıklama: | Bir dosya için gösterilecek açıklama belirtilir. |
|---|---|
| Sözdizimi: | AddDescription metin dosya [dosya] ... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
Yönerge, FancyIndexing seçeneÄiyle üretilen dizin listesinde bir
+ dosya için gösterilecek açıklamayı belirler. dosya
+ olarak dosya türünü betimleyecek bir dosya uzantısı, dosya isminin bir
+ kısmı, bir dosya ismi kalıbı veya tam yoluyla bir dosya ismi
+ belirtilebilir. EÄer dosya açıklamasını içeren
+ metin boÅluk karakterleri içeriyorsa çift tırnak
+ (") içine alınmalıdır.
+ AddDescription "Mars Gezegeni" /resimler/mars.gif
+
Normalde öntanımlı açıklama alanının geniÅliÄi 23 bayttır. IndexOptions SuppressIcon
+ seçeneÄi buna 6 bayt daha ekler; IndexOptions SuppressSize
+ seçeneÄi 7 bayt, IndexOptions SuppressLastModified seçeneÄi ise 19 bayt
+ ekler. Böylece en fazla 55 karakterlik öntanımlı sütun geniÅliÄine
+ ulaÅılabilir.
Açıklama sütununun öntanımlı geniÅliÄi geçersiz kılınabilir hatta
+ sınırsız açıklama uzunluÄu atanabilir. Bu konu için IndexOptions yönergesinin DescriptionWidth
+ seçeneÄinin açıklamasına bakınız.
AddDescription ile tanımlanan açıklama metni
+ HTML etiketleri ve karakter öÄeleri içerebilir. EÄer açıklama
+ sütununun geniÅlik sınırlamasından dolayı bir HTML etiketinin içeriÄi
+ kırpılırsa bu durum dizin listesinin kalanını etkileyebilir (örneÄin,
+ kalın gösterim listenin kalanına yayılabilir).
| Açıklama: | Bir dosya için gösterilecek simgeyi dosya adına göre belirler. + |
|---|---|
| Sözdizimi: | AddIcon simge isim [isim]
+... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
Yönerge, FancyIndexing seçeneÄiyle üretilen dizin listesinde adı
+ isim ile biten bir dosya için gösterilecek simgeyi
+ belirler. simge ya simgenin göreli URLâsi (%
+ öncelemeli) ya da (alt-metin,url)
+ biçeminde olmalıdır; buradaki alt-metin simge
+ gösterilemediÄi durumda tarayıcı tarafından simgenin yerinde
+ gösterilecek metindir.
isim olarak ya (listeyi düzgün biçemlemek
+ amacıyla) dizinler için ^^DIRECTORY^^, boŠsatırlar için
+ ^^BLANKICON^^ ya da dosya türünü betimleyecek bir dosya
+ uzantısı, dosya isminin bir kısmı, bir dosya ismi kalıbı veya tam
+ yoluyla bir dosya ismi belirtilebilir.
+ AddIcon (IMG,/icons/image.xbm) .gif .jpg .xbm
+ AddIcon /icons/dir.xbm ^^DIRECTORY^^
+ AddIcon /icons/backup.xbm *~
+
Mümkünse AddIcon yerine AddIconByType yönergesi tercih
+ edilmelidir.
| Açıklama: | Bir dosya için gösterilecek simgeyi dosyanın MIME kodlamasına +göre belirler. |
|---|---|
| Sözdizimi: | AddIconByEncoding simge MIME-kodlaması
+[MIME-kodlaması] ... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
Yönerge, FancyIndexing seçeneÄiyle üretilen dizin listesinde bir
+ dosya için gösterilecek simgeyi belirler. simge ya
+ simgenin göreli URLâsi (% öncelemeli) ya da
+ (alt-metin,url) biçeminde olmalıdır;
+ buradaki alt-metin simge gösterilemediÄi durumda
+ tarayıcı tarafından simgenin yerinde gösterilecek metindir.
MIME-kodlaması olarak x-compress
+ gibi geçerli bir içerik kodlaması belirtilmelidir.
+ AddIconByEncoding /icons/compress.xbm x-compress
+
| Açıklama: | Bir dosya için gösterilecek simgeyi dosyanın MIME türüne göre +belirler. |
|---|---|
| Sözdizimi: | AddIconByType simge MIME-türü
+[MIME-türü] ... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
Yönerge, FancyIndexing seçeneÄiyle üretilen dizin listesinde MIME
+ türü MIME-türü olarak belirtilen bir dosya için
+ gösterilecek simgeyi belirler. simge ya simgenin
+ göreli URLâsi (% öncelemeli) ya da
+ (alt-metin,url) biçeminde olmalıdır;
+ buradaki alt-metin simge gösterilemediÄi durumda
+ tarayıcı tarafından simgenin yerinde gösterilecek metindir.
MIME-türü MIME türleri ile eÅleÅen bir dosya kalıbı ifadesi + olabilir.
+ +
+ AddIconByType (IMG,/icons/image.xbm) image/*
+
| Açıklama: | Ãzel bir simge atanmamıŠdosyalar için gösterilecek simgeyi +belirler. |
|---|---|
| Sözdizimi: | DefaultIcon URL-yolu |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
The DefaultIcon yönergesi FancyIndexing seçeneÄiyle
+ üretilen dizin listesinde özel bir simge atanmamıŠdosyalar için
+ gösterilecek simgeyi belirler. URL-yolu simgeye
+ bir göreli URL (% öncelemeli) belirtir.
+ DefaultIcon /icon/unknown.xbm
+
| Açıklama: | Dizin listesinin tepesine yerleÅtirilecek dosyanın ismini +belirler. |
|---|---|
| Sözdizimi: | HeaderName dosya-ismi |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
HeaderName yönergesi, dizin listesinin tepesine
+ yerleÅtirilecek dosyanın ismini belirler. Dosyanın ismi
+ dosya-ismi ile belirtilir.
+ HeaderName HEADER.html
+
HeaderName and ReadmeName yönergelerinde
+ dosya-ismi artık içeriÄi listelenecek dizine
+ eriÅmek için kullanılan bir göreli URL yolu olarak ele alınmaktadır.
+ EÄer dosya-ismi bir bölü çizgisi ("/") ile
+ baÅlıyorsa DocumentRoot
+ yönergesinde belirtilen dizine göre belirtildiÄi varsayılır.
+ HeaderName /include/HEADER.html
+
dosya-ismi, içerik türü text/*
+ (text/html, text/plain gibi) olan bir belge
+ olarak çözümlenmelidir. Yani, aÅaÄıdaki örnekteki gibi betiÄin asıl
+ dosya türü text/html olarak imlenmiÅse
+ dosya-ismi bir CGI betiÄinin ismi bile
+ olabilir:
+ AddType text/html .cgi
+
Options ile
+ MultiViews etkin kılınmıÅsa dosyaya içerik dili uzlaÅımı da
+ uygulanabilir. dosya-ismi ile belirtilen dosya
+ text/html türünde duraÄan bir belge (bir CGI betiÄi
+ deÄil) ise ve options ile
+ Includes ve IncludesNOEXEC seçeneklerinden
+ biri belirtilmiÅse dosya bir SSI sayfası olarak ele alınır
+ (mod_include belgesine bakınız).
EÄer yönergede belirtilen dosya bir HTML belge gibi baÅlıyorsa
+ (<html>, <head>, vs.) ve bu etiketlerin yinelenmemesini
+ istiyorsanız IndexOptions +SuppressHTMLPreamble ataması yapmanız
+ gerekecektir.
| Açıklama: | Dizin içerik listesinden gizlenecek dosyaların listesi belirtilir. + |
|---|---|
| Sözdizimi: | IndexIgnore dosya [dosya] ... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
IndexIgnore yönergesi, dizin içerik listesinden
+ gizlenecek dosyaların listesini belirtmek için kullanılır.
+ dosya olarak kabuk tarzı bir dosya ismi kalıbı
+ veya tam yoluyla bir dosya ismi belirtilebilir. Evvelce yapılmıŠbir
+ atamada deÄiÅiklik yapmak yerine birden fazla
+ IndexIgnore ataması yapabilirsiniz. Liste
+ öntanımlı olarak içinde bulunulan dizini (./) içerir.
+ IndexIgnore README .htaccess *.bak *~
+
| Açıklama: | Dizin içerik listesini yapılandıracak seçenekler belirtilir. + |
|---|---|
| Sözdizimi: | IndexOptions [+|-]seçenek [[+|-]seçenek]
+... |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
IndexOptions yönergesi dizin içerik listesinin
+ davranıÅını belirler. seçenek olarak Åunlar
+ belirtilebilir:
Charset=karakter-kümesi (Apache 2.0.61
+ ve sonrası)Charset seçeneÄi üretilen sayfa için bir karakter
+ kümesi belirtebilmenizi saÄlar. Dizinin bulunduÄu dosya sisteminin
+ karakter kodlamasına baÄlı olarak öntanımlı deÄeri ya
+ ISO-8859-1 ya da UTF-8âdir.
+
+
+ IndexOptions Charset=UTF-8
+
Type=MIME-türü (Apache 2.0.61 ve
+ sonrası)Type seçeneÄi üretilen sayfa için bir MIME türü
+ belirtebilmenizi saÄlar. Ãntanımlı deÄer text/htmlâdir.
+
+
+ IndexOptions Type=text/plain
+
DescriptionWidth=[n | *]
+ (Apache 2.0.23 ve sonrası)DescriptionWidth seçeneÄi üretilen sayfada açıklama
+ sütununun geniÅliÄini sizin belirleyebilmenizi saÄlar. Bu seçenek
+ kullanılmadıÄında veya -DescriptionWidth olarak
+ belirtildiÄinde uygun geniÅliÄi mod_autoindex
+ hesaplar.
DescriptionWidth=n ile açıklama sütununun
+ geniÅliÄi n baytla sınırlanır.
DescriptionWidth=* ile açıklama sütununun geniÅliÄi en
+ uzun açıklama metni sıÄacak Åekilde arttırılır.
Sütun geniÅliÄinin sabitliÄi nedeniyle metnin
+ kırpılmasından kaynaklanan sorunlar için AddDescription yönergesinin
+ açıklamasına bakınız.
FancyIndexingFoldersFirst
+ (Apache 2.0.23 ve sonrası)FoldersFirst etkinse Zed dizini listede
+ Beta dizininden ve Gamma ve
+ Alpha dosyalarından önce yer alacaktır. Bu
+ seçenek sadece FancyIndexing seçeneÄi etkinse etkili
+ olacaktır.HTMLTable
+ (Deneysel, Apache 2.0.23 ve sonrası)FancyIndexing seçeneÄi ile birlikte süslü listeleme
+ için basit bir tablo oluÅturur. Fakat bu eski tarayıcıları yanıltır.
+ Bununla birlikte, Linux, WinNT gibi saÄdan sola veya soldan saÄa yazım
+ yönünün UTF-8 karakter koduna göre deÄiÅtiÄi platformlarda dosya
+ isimleri ve açıklamalar için bu özellikle gerekli olabilir.IconsAreLinksFancyIndexing seçeneÄi ile birlikte süslü
+ listelemede dosya simgesini dosyaya bir hiper baÄ haline getirir.IconHeight[=benek-sayısı]IconWidth seçeneÄi ile
+ kullanıldıÄında dosya simgesinin img etiketinin
+ height ve width özniteliklerini içermesine
+ sebep olur. Böylece tarayıcının tüm simgelerin yüklenmesini beklemeden
+ sayfa yerleÅimi için bir ön hesaplama yapabilmesi mümkün olur. Seçenek
+ bir deÄer belirtilmeksizin kullanıldıÄında Apache tarafından atanmıÅ
+ standart simge yüksekliÄi öntanımlıdır.IconWidth[=benek-sayısı]IconHeight seçeneÄi ile
+ kullanıldıÄında dosya simgesinin img etiketinin
+ height ve width özniteliklerini içermesine
+ sebep olur. Böylece tarayıcının tüm simgelerin yüklenmesini beklemeden
+ sayfa yerleÅimi için bir ön hesaplama yapabilmesi mümkün olur. Seçenek
+ bir deÄer belirtilmeksizin kullanıldıÄında Apache tarafından atanmıÅ
+ standart simge geniÅliÄi öntanımlıdır.IgnoreCaseIgnoreCase
+ etkinse Zeta dosyası alfa dosyasından sonra listelenir (Dikkat: GAMMA
+ daima gammaâdan önce listelenir.)IgnoreClientmod_autoindexâin listenin sıralanmasına
+ etki edenler dahil tüm sorgu deÄiÅkenlerini yoksaymasına sebep olur
+ (örtük olarak SuppressColumnSorting uygulanır).NameWidth=[n | *]NameWidth seçeneÄi dosya ismi sütunu için bir
+ geniÅlik belirtebilmenizi mümkün kılar.
Hiç belirtilmediÄinde veya -NameWidth biçeminde
+ belirtildiÄinde mod_autoindex uygun geniÅliÄi kendisi
+ hesaplayacaktır.
NameWidth=n ile sütun geniÅliÄi
+ n bayt geniÅlikte sabitlenir.
NameWidth=* olduÄunda ise sütun geniÅliÄi en geniÅ
+ satırın sıÄacaÄı kadar arttırılır.
ScanHTMLTitlesAddDescription ile bir açıklama tanımlanmımıÅsa httpd
+ belgenin title etiketinin içeriÄini okuyacaktır. Bu
+ seçenek iÅlemciyi ve diski fazla meÅgul eder.ShowForbiddenHTTP_UNAUTHORIZED veya
+ HTTP_FORBIDDEN döndürdüÄünden dolayı normalde gizli olan
+ dosyalar bu seçenek belirtilmiÅse listede gösterilir.SuppressColumnSortingIndexOptions
+ IgnoreClient ile saÄlanmaktadır.SuppressDescriptionAddDescription
+ yönergesinin açıklamasına bakınız. Ayrıca, açıklama sütununun
+ geniÅliÄini ayarlayan DescriptionWidth dizin listeleme seçeneÄine de
+ bakınız.SuppressHTMLPreambleHeaderName yönergesi ile belirtilmiŠbir dosya içeriyorsa
+ modül normal olarak bu dosyanın içeriÄinin öncesine HTML baÅlangıç
+ etiketlerini (<html>, <head>,
+ vs.) yerleÅtirir. Bu seçenek bu davranıÅı iptal ederek modülün dosya
+ içeriÄinin baÅlangıcına bir Åey eklememesini saÄlar. Bu durumda baÅlık
+ dosyasının uygun HTML etiketlerini içermesi gerekir. Böyle bir baÅlık
+ dosyası yoksa normal olarak HTML baÅlangıç etiketleri üretilir.SuppressIcon
+ (Apache 2.0.23 ve sonrası)pre
+ etiketinin içeriÄinde img ve hr
+ etiketlerinin bulunmasına izin vermediÄinden SuppressIcon
+ ve SuppressRules seçenekleri birlikte kullanılarak HTML
+ 3.2 belirtimine uyum saÄlanır.SuppressLastModifiedSuppressRules
+ (Apache 2.0.23 ve sonrası)hr etiketinin kullanımını engeller.
+ Son belirtim, süslü dizin listelemede kullanılan pre
+ etiketinin içeriÄinde img ve hr
+ etiketlerinin bulunmasına izin vermediÄinden SuppressIcon
+ ve SuppressRules seçenekleri birlikte kullanılarak HTML
+ 3.2 belirtimine uyum saÄlanır.SuppressSizeTrackModified
+ (Apache 2.0.23 ve sonrası)Last-Modified ve ETag alanlarının dönmesini
+ saÄlar. Sadece iÅletim sistemi veya dosya sistemi uygun stat()
+ sonuçlarını döndürüyorsa bu geçerlidir. Bazı Unix sistemleri, OS2ânin
+ JFSâsi ve Win32ânin NTFSâi böyledir. Ancak OS2 ve Win32 FAT dosya
+ sistemleri böyle deÄildir. Bu özellik etkin kılındıÄında istemci veya
+ vekil HEAD istekleriyle dosya listesindeki deÄiÅiklikleri
+ izleyebilirler. Yalnız, bazı iÅletim sistemlerinin yeni ve silinmiÅ
+ dosyaların izini iyi sürdüÄü halde dizin içindeki dosyaların boyut ve
+ tarih deÄiÅikliklerini izlemediklerine dikkat ediniz. Mevcut
+ bir dosyanın boyut ve zaman damgasındaki deÄiÅiklikler
+ Last-Modified baÅlıÄının güncellenmesini tüm Unix
+ sistemlerinde saÄlamaz. Bu gibi durumlarda bu seçeneÄin
+ kapalı kalması daha iyidir.VersionSort
+ (Apache 2.0a3 ve sonrası)VersionSort seçeneÄi isimlerinde sürüm numarası bulunan
+ dosyaların sayısal sıralamaya uygun olarak sıralanmalarını saÄlar.
+ Normalde sıralama karakter sıralamasına göre yapılır, ardından sürüm
+ numaralı dosyalar veya açıklamalar kendi aralarında sayısal sıralamaya
+ tabi tutulur.
+
+
+ foo-1.7
+ foo-1.7.2
+ foo-1.7.12
+ foo-1.8.2
+ foo-1.8.2a
+ foo-1.12
+
Sıfır ile baÅlalan numaralara ondalık sayı muamelesi yapılır:
+ +
+ foo-1.001
+ foo-1.002
+ foo-1.030
+ foo-1.04
+
XHTML
+ (Apache 2.0.49 ve sonrası)XHTML seçeneÄi mod_autoindexâin kodu
+ HTML 3.2âye deÄil XHTML 1.0âa uygun üretmesini saÄlar.+ veya - Ãnekli SeçeneklerApache 1.3.3âte IndexOptions yönergelerinin ele
+ alınıÅıyla ilgili önemil deÄiÅiklikler yapılmıÅtır. Bunlar:
IndexOptions
+ yönergesi belirtilmiÅse bunlar ayrı ayrı deÄil birlikte ele alınır.
+ Yani,
+
+
+ <Directory /foo>
+
+ IndexOptions HTMLTable
+ IndexOptions SuppressColumnsorting
+
+ </Directory>
+
yapılandırmasındaki IndexOptions
+ yönergeleri
+ IndexOptions HTMLTable SuppressColumnsorting
+
yönergesine eÅdeÄerdir.
++ veya - önekleri
+ kullanılabilmektedir.+ veya - önekli seçeneklere rastlandıÄında
+ bunlar mevcut (üst dizinden miras alınanlar ve/veya önceki atamalar)
+ IndexOptions yönergelerine uygulanır. Ancak,
+ önek kullanılmamıŠbir seçeneÄe raslandıÄında, o noktada önceki ve
+ miras alınmıŠbu tür seçenekler iptal edilir. Åu örneÄi ele alalım:
+ IndexOptions +ScanHTMLTitles -IconsAreLinks FancyIndexing
+ IndexOptions +SuppressSize
+
Bunun net etkisi IndexOptions FancyIndexing +SuppressSize
+ atamasına eÅdeÄerdir, çünkü öneksiz FancyIndexing seçeneÄi
+ kendinden önceki önekli seçenekleri iptal etmiŠfakat hemen ardından
+ eklenmelerine izin vermiÅtir.
Belli bir dizine önceki seçenekleri temizleyerek koÅulsuz olarak
+ tamamen yeni seçenekler atamak istiyorsanız
+ IndexOptions yönergesinde seçenekleri
+ + veya - öneklerini kullanmadan
+ belirtiniz.
| Açıklama: | Dizin içerik listesinin öntanımlı sıralamasını belirler. + |
|---|---|
| Sözdizimi: | IndexOrderDefault Ascending|Descending
+Name|Date|Size|Description |
| Ãntanımlı: | IndexOrderDefault Ascending Name |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
IndexOrderDefault yönergesi FancyIndexing seçeneÄinin
+ etkin olduÄu durumda iÅe yarar. Ãntanımlı olarak süslü listelemede dizin
+ içeriÄi dosya ismine göre artan sıralamayla listelenir.
+ IndexOrderDefault yönergesi bu öntanımlı
+ sıralamanın deÄiÅtirilmesini mümkün kılar.
IndexOrderDefault yönergesi iki deÄer alır. İlki
+ sıralama yönünü belirtmek üzere Ascending (küçükten büyüÄe)
+ veya Descending (büyükten küçüÄe) olmak zorundadır. İkinci
+ deÄer ise birincil sıralama anahtarını belirtmek üzere Name,
+ Date, Size ve Description
+ sözcüklerinden biri olmalıdır (anlamları sırayla: İsim, Tarih, Boyut,
+ Açıklama). İkincil sıralama anahtarı daima artan sıralamayla
+ dosya ismidir.
Dizin listesinin belli bir sırada gösterilmesini zorunlu kılmak için
+ yönergeyi SuppressColumnSorting sıralama seçeneÄi ile birlikte
+ belirtebilirsiniz; böylece, istemcinin farklı sıralamalara sahip içerik
+ isteÄini engellemiÅ olursunuz.
| Açıklama: | Dizin listesine bir biçembent ekler. |
|---|---|
| Sözdizimi: | IndexStyleSheet url-yolu |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
IndexStyleSheet yönergesi dizin listelemesi için
+ kullanılacak biçembent dosyasının ismini belirtmek için kullanılır.
+ IndexStyleSheet "/css/style.css"
+
| Açıklama: | Dizin listesinin sonuna yerleÅtirilecek dosyanın ismini +belirler. |
|---|---|
| Sözdizimi: | ReadmeName dosya-ismi |
| BaÄlam: | sunucu geneli, sanal konak, dizin, .htaccess |
| GeçersizleÅtirme: | Indexes |
| Durum: | Temel |
| Modül: | mod_autoindex |
ReadmeName yönergesi dizin listesinin sonuna
+ eklenecek dosyanın ismini belirler. dosya-ismi ile
+ listeye dahil edilecek dosyanın ismi listelenen dizine göreli olarak
+ belirtilir. EÄer dosya ismi bir bölü çizgisi ile baÅlıyorsa DocumentRootâa göreli belirtildiÄi
+ varsayılır.
+ ReadmeName FOOTER.html
+
+ ReadmeName /include/FOOTER.html
+
Ayrıca bu davranıÅın daha ayrıntılı ele alındıÄı HeaderName yönergesine de
+ bakınız.