From: Rich Bowen
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.
+Apache HTTP Sunucusunu etkileyen ortam deÄiÅkenleri iki çeÅittir.
+ +İlki, iÅletim sisteminin denetimindeki ortam deÄiÅkenleridir. Bu + deÄiÅkenlere deÄer atama iÅlemi sunucu baÅlatılmadan önce yapılır. + Bunlar yapılandırma dosyalarının içinde kullanılabilir. Ayrıca, + istenirse PassEnv yönergesi kullanılarak bunlar CGI betiklerine ve + SSI sayfalarına da aktarılabilir.
+ +İkincisi ise, Apache HTTP Sunucusunun kendi ortam deÄiÅkenleridir. + Bu deÄiÅkenlerde saklanan 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 @@ -52,7 +58,7 @@
İlgili Modüller | İlgili Yönergeler |
---|---|
İlgili Modüller | İlgili Yönergeler |
---|---|
Apache yapılandırmasıyla atanan ve kabuÄa aktarılan ortam - deÄiÅkenlerinden baÅka CGI + 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.
@@ -116,6 +122,14 @@ betiklerine ve SSI sayfalarına aktarılırken bu sınırlamalara uygun olmayan karakterlerin yerlerine alt çizgi imleri konur. +SetEnv
yönergesi geç çalıÅtırılır,
yani SetEnvIf
ve
RewriteCond
gibi
@@ -373,6 +387,33 @@
2.4 sürümünden itibaren, mod_cgi
modülü ve diÄer
+ modüllerde HTTP baÅlıklarının ortam deÄiÅkenlerine dönüÅtürülmesi
+ baÄlamında Apache daha seçici davranmaktadır. Ãnce HTTP baÅlıÄındaki
+ geçersiz karakterlerin tamamı altçizgilere dönüÅtürülür. Bu, baÅlık
+ zerki yoluyla yapılan karÅı-site-betiklerini-çalıÅtırma saldırısını
+ önlemeye yöneliktir. (Bakınız: Unusual Web Bugs, slide 19/20).
Bozuk baÅlıklar gönderdiÄi halde bunlara dokunulmamasını gerektiren
+ bir istemciniz varsa, mod_setenvif
ve
+ mod_header
modüllerinin sunduÄu yapıyı örnekteki gibi
+ kullanarak bu sorunun üstesinden gelebilirsiniz:
+#
+# AÅaÄıdaki satırlarla bir istemcinin gönderdiÄi bozuk
+# Accept_Encoding baÅlıklarının istenildiÄi gibi iÅlenmesi
+# saÄlanabilir.
+#
+SetEnvIfNoCase ^Accept.Encoding$ ^(.*)$ fix_accept_encoding=$1
+RequestHeader set Accept-Encoding %{fix_accept_encoding}e env=fix_accept_encoding
+
-# -# 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
+#
+# 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
+
- SetEnvIf Referer "^http://filan\.fesmekan\.dom/" local_referal
+ SetEnvIf Referer "^http://www\.example\.com/" local_referal
# Referrer bilgisi göndermeyen tarayıcılara izin verelim
SetEnvIf Referer "^$" local_referal
- <Directory /siteler/resimler>
+ <Directory /siteler/resimler>
Order Deny,Allow
Deny from all
diff --git a/docs/manual/env.xml.meta b/docs/manual/env.xml.meta
index 67070dc314..19580dd224 100644
--- a/docs/manual/env.xml.meta
+++ b/docs/manual/env.xml.meta
@@ -11,6 +11,6 @@
Bu belge, Apacheâde süzgeç kullanımı hakkındadır.
İlgili Modüller | İlgili Yönergeler |
---|---|
İlgili Modüller | İlgili Yönergeler |
---|---|
Apache 2.0 ve sonrasında mevcut olan Süzgeç Zinciri, uygulamaların nereden geldiÄine bakmaksızın gelen ve giden verileri oldukça esnek ve @@ -108,6 +108,26 @@
Süzgeçler, istemciden kaynaklanan içeriÄi iÅlemekte kullanılabileceÄi
+ gibi mod_reflector
modülü kullanılarak sunucudan
+ kaynaklanan içeriÄi iÅlemekte de kullanılabilir.
mod_reflector
istemcilerden gelen POST isteklerini
+ kabul eder ve çıktı süzgeç yıÄıtı yoluyla istemciye aktararak, POST
+ isteÄi içinde alınan içerik istek gövdesini yanıt içinde geri
+ gönderir.
Bu teknik, bir çıktı süzgeciyle istek gövdesinde gerekli dönüÅümün
+ saÄlandıÄı durumda, bir uygulama sunucusu yıÄıtı içinde çalıÅan bir http
+ hizmetinin yerine de kullanılabilir. ÃrneÄin,
+ mod_deflate
modülü genel bir sıkıÅtırma hizmeti
+ saÄlamakta kullanılabilir veya bir resim dönüÅtürme süzgeci bir resim
+ dönüÅüm hizmeti haline getirilebilir.
Süzgeçler iki Åekilde kullanılır: Basit ve Devingen.
Genelde ikisinden biri kullanılır; karıÅık kullanılırsa istenmeyen
@@ -132,7 +152,7 @@
FilterProvider
.
AddOutputFilterByType
yönergesi
- hala desteklenmekteyse de sorun çıkarabilmesi sebebiyle kullanımı artık
+ hala desteklenmekteyse de kullanımı artık
önerilmemektedir. Onun yerine devingen yapılandırma kullanınız.
Sürümlerin DaÄıtım Bilgileri
Platformlara Ãzgü Bilgilerdiff --git a/docs/manual/index.xml.meta b/docs/manual/index.xml.meta index 4e2ec6f7e3..a36d92a1f5 100644 --- a/docs/manual/index.xml.meta +++ b/docs/manual/index.xml.meta @@ -15,7 +15,7 @@ |
İlgili Modüller | İlgili Yönergeler |
---|---|
İlgili Modüller | İlgili Yönergeler |
---|---|
DocumentRoot
Yapılan bir isteÄe hangi dosyanın sunulacaÄına karar verirken
- Apacheânin öntanımlı davranıÅı istek için URL yolunu (URLâden konak ismi
+ httpdânin öntanımlı davranıÅı istek için URL yolunu (URLâden konak ismi
ve port ayrıldıktan sonra kalan kısım) alıp bunu yapılandırma dosyasında
DocumentRoot
yönergesi ile
belirtilen dizinin sonuna eklemektir. Bu nedenle, DocumentRoot
altındaki dizinler ve dosyalar
@@ -61,7 +61,7 @@
istek için istemciye /var/http/html/balıklar/zargana.html
dosyası sunulur.
Apache ayrıca, sunucunun birden fazla konak için istek kabul etmesini +
httpd ayrıca, sunucunun birden fazla konak için istek kabul etmesini
saÄlayan sanal barındırmaya da muktedirdir. Bu
durumda her sanal konak için ayrı bir DocumentRoot
belirtilebileceÄi gibi sunulacak içeriÄin
istekte bulunulan IP adresi veya konak ismine dayanarak devingen olarak
@@ -77,12 +77,12 @@
Bazen dosya sisteminde doÄrudan DocumentRoot
altında bulunmayan dosyalara da eriÅim izni
- vermek gerekir. Apacheâde bunu saÄlamanın çeÅitli yolları vardır. Unix
+ vermek gerekir. httpdâde bunu saÄlamanın çeÅitli yolları vardır. Unix
sistemlerinde sembolik baÄlar sayesinde dosya sisteminin farklı
yerlerindeki dosyaları ve dizinleri DocumentRoot
altındaymıŠgibi göstermek mümkündür.
Options
yönergesine deÄer olarak
FollowSymLinks
veya SymLinksIfOwnerMatch
- atanmadıkça Apache olası güvenlik açıklarına karÅı öntanımlı olarak
+ atanmadıkça httpd olası güvenlik açıklarına karÅı öntanımlı olarak
sembolik baÄları izlemez.
Bundan baÅka, dosya sisteminin farklı parçalarını belge kök dizini
@@ -143,13 +143,13 @@
eÅlemek için AliasMatch
yönergesi Åöyle
kullanılabilirdi:
AliasMatch ^/sayfalar/([a-zA-Z0-9]+)/?(.*)
- /home/$1/public_html/$2
AliasMatch ^/sayfalar/([a-zA-Z0-9]+)(/(.*))?$
+ /home/$1/public_html/$3
Yukarıdaki bölümlerde açıklanan yapılandırma yönergeleri Apacheâye +
Yukarıdaki bölümlerde açıklanan yapılandırma yönergeleri httpdâye içeriÄi dosya sisteminin belli bir yerinden alıp istemciye göndermesini söyler. Bazen istemciye, istediÄi içeriÄe farklı bir URL ile eriÅebileceÄini ve bu URL için ayrı bir istek yapması gerektiÄini @@ -169,7 +169,7 @@ zorunda deÄilsiniz, bu yönerge ile baÅka bir sunucuya da yönlendirme yapabilirsiniz.
-Apache ayrıca, yeniden yazma ile ilgili daha karmaÅık sorunlara çözüm +
httpd ayrıca, yeniden yazma ile ilgili daha karmaÅık sorunlara çözüm
olarak RedirectMatch
diye bir
yönerge daha saÄlar. ÃrneÄin bir sitenin baÅ sayfasını diÄer isteklerden
ayrı olarak farklı bir siteye yönlendirmek için yönergeyi Åöyle
@@ -187,7 +187,7 @@
Apache ayrıca, uzak sunuculardaki belgelerin yerel sunucunun URL +
httpd ayrıca, uzak sunuculardaki belgelerin yerel sunucunun URL
alanına getirilmesini de mümkün kılar. Bu tekniÄe HTTP sunucunun
belgeleri uzak bir sunucudan alıp istemciye sunmasını saÄlayarak bir
vekil sunucu gibi davranması nedeniyle ters vekalet adı
@@ -218,9 +218,17 @@
dikkat ediniz. Dolayısıyla, belge içinde
dahili.mesela.dom
âu ismiyle hedef alan mutlak hiperbaÄlar
varsa bunlar istemci tarafından vekil sunucudan deÄil doÄrudan
- dahili.mesela.dom
âdan istenecektir. Ãçüncü parti modüller
+ dahili.mesela.dom
âdan istenecektir. Bir sayfanın içindeki bu
+ baÄları (ve diÄer içeriÄi) mod_substitute
modülü
+ kullanılarak istemciye sunuluyormuÅçasına deÄiÅtirebilirsiniz.
+ Substitute s/dahili\.mesela\.dom/harici.mesela.dom/i
+
Ayrıca, Ãçüncü parti modüller arasında HTML ve XHTMLâde hiperbaÄları yeniden yazabilen mod_proxy_html - adında bir modül vardır.
+ adında bir modül de vardır."Dosya orada yok" ("File Not Found") hatalarının diÄer bir bildik
sebebi de URLâlerin hiperbaÄlarda veya doÄrudan tarayıcıda kasıtlı ya da
kasıtsız, yanlıŠyazılmasıdır. Bu tür sorunlarda yardımcı olması için
- Apache mod_speling
(sic) adında bir modülle gelir. Bu
- modül etkin kılındıÄında Apache, "Dosya orada yok" ("File Not Found")
+ httpd mod_speling
(sic) adında bir modülle gelir. Bu
+ modül etkin kılındıÄında htpd, "Dosya orada yok" ("File Not Found")
hatalarının önünü kesip baÅka bir yerde benzer isimde bir dosya var mı
diye bakar. Böyle bir dosya varsa, mod_speling
istemciye dosyanın doÄru yerini bildiren bir HTTP yönlendirmesi yollar.
@@ -269,11 +277,39 @@
yönlendirmesine konu olmasına sebep olarak sunucunun yükünü
arttırabilir.
mod_dir
modülü sanal URI'leri, onları sunan gerçek
+ kaynaÄa eÅlemekte kullanılan FallbackResource
yönergesini içerir. Bir 'ön denetleyici'
+ gerçeklerken mod_rewrite
modülünün kullanılmasını
+ saÄlamak için çok kullanıÅlıdır.
Yerinde bulunmayan içeriÄin bulunması çabalarının tümü Apacheânin 404
(Dosya orada yok) HTTP durum kodlu bir hata sayfası döndürmesine yol
açar. Bu sayfanın içeriÄi ErrorDocument
yönergesi ile denetlenebilir ve Hata Yanıtlarının KiÅiselleÅtirilmesi
bölümünde anlatıldıÄı gibi oldukça esnek bir Åekilde
kiÅiselleÅtirilebilir.
URL eÅlemede kullanılabilecek diÄer modüller:
+ +mod_actions
- Bir isteÄi, özkaynaÄın MIME türüne veya
+ istek yöntemine bakarak bir CGI betiÄine eÅler.mod_dir
- URL'yi sonlandıran bölü çizgisini
+ index.html
bir dosyaya eÅler.mod_imagemap
- Bir isteÄi, bir HTML belge içindeki
+ bir resme yapılan kullanıcı tıklamalarına dayanarak bir URL'ye
+ eÅler.mod_negotiation
- Dil veya içerik sıkıÅtırması gibi
+ kullanıcı tercihlerine dayanarak uygun bir belgeyi seçer.Mevcut Diller: en |
diff --git a/docs/manual/urlmapping.xml.meta b/docs/manual/urlmapping.xml.meta
index 9fd5f4bb52..35880bdad4 100644
--- a/docs/manual/urlmapping.xml.meta
+++ b/docs/manual/urlmapping.xml.meta
@@ -11,6 +11,6 @@