From: Nilgun Belma Buguner
Apache, bazı sorunlara ve hatalara karÅılık vereceÄi yanıtların - yapılandırabilmesini mümkün kılan ek bir iÅlevselliÄe sahiptir.
-Site yöneticisi tarafından kiÅiselleÅtirilebilen bu tür yanıtlar, - sunucu belli hatalar veya sorunlarla karÅılaÅtıÄında etkin kılınmak - üzere tanımlanabilir.
+Apache HTTP Sunucusu 4xx veya 5xx HTTP durum kodları ile ilgili + olaylarda soysal hata yanıtları üretse de bu yanıtlar site + kullanıcılarına aÅırı sade, bilgi vermez ve hatta korkutucu gelebilir. + Daha dostça yazılmıÅ, İngilizce deÄil de kendi dilinizde ve belki + sayfalarınızın yerleÅimine uygun daha hoÅ satırlarda özel hata yanıtları + üretmek isteyebilirsiniz.
+ +KiÅiselleÅtirilmiÅ hata yanıtları, bir hata durumuna göre tasarlanmıŠ+ herhangi bir HTTP durum kodu (yani 4xx ve 5xx kodlarından biri) için + tanımlanabilir.
+ +Ek olarak bir deÄer kümesi de saÄlanmıÅtır. Böylece hata belgeleri, Sunucu taraflı İçerik YerleÅtirme kullanılarak + bu deÄiÅkenlerin deÄerlerine göre özelleÅtirilebilir. İsterseniz bunun + yerine bir CGI programı veya devingen bir eylemci (PHP, mod_perl, vs.) + kullanarak da bu deÄiÅkenlerin deÄerlerine göre hata sayfalarınızı + üretebilirsiniz.
-Bir betik bir hata nedeniyle bir "500 Server Error" yanıtının - verilmesine sebep olursa bu yanıt yerine baÅka bir adrese - yönlendirilerek (dahili veya harici) veya doÄrudan daha dostça bir - metin sunulabilir.
-KiÅiselleÅtirilmiÅ hata belgeleri ErrorDocument
yönergesi kullanılarak yapılandırılabilir. Bu
+ yönerge küresel baÄlamda olabileceÄi gibi sanal konak ve dizin
+ baÄlamlarında da kullanılabilir. AllowOverride
yönergesine FileInfo
+ atanarak .htaccess
dosyalarında da kullanılabilir.
NCSA httpd 1.3, çoÄunlukla kullanıcıya anlamsız gelen ve sebebiyle - kavramsal bir baÄ kurulamayan günlük kayıtları üreten, can sıkıcı - bazı hata/sorun yanıtları döndürürdü.
- +
+ ErrorDocument 500 "Pardon, galiba bizim betik hata verdi."
+ ErrorDocument 500 /cgi-bin/hata-kurtarma
+ ErrorDocument 500 http://error.example.com/server_error.html
+ ErrorDocument 404 /ozuru_kabahatinden_buyuk/yok.html
+ ErrorDocument 401 /Uyeler/NASIL_uye_olunur.html
+
ErrorDocument
yönergesinin sözdizimi:
Sunucudan NCSA kodlu iletiler yerine
+
+ ErrorDocument <3-rakamlı-kod> <eylem>
+
eylem Åunlardan biri olabilir:
-Yerel bir adrese yönlendirme yapılırken ek ortam deÄiÅkenleri de + atanarak yanıt daha da özelleÅtirilebilir. Bunlar harici URL'lere + gönderilmez.
-istenebilir. BaÅka bir adrese yönlendirme, hata veya sorunu daha iyi - açıklamakta kullanılabilecek bazı bilgilerin aktarılması Åartıyla - oldukça kullanıÅlı olabilir.
+Hata durumunu açıklayacak veya hata günlüÄüne daha açıkça + kaydedilebilecek bazı bilgilerin aktarılması koÅuluyla, baÅka bir + adrese yönlendirme kullanıÅlı olabilir
+ +Hata yönlendirmesi yapılırken bunu saÄlamak için ek ortam deÄiÅkenleri + tanımlanır. Bu deÄiÅkenlerin isimleri, özgün istekle saÄlanan + baÅlık isimlerinin önüne 'REDIRECT_' dizgesi getirilerek üretilir. + Böylece özgün istek baÄlamından hata belgesi üretilebilir.
-Apache, buna olanak vermek için CGI benzeri yeni ortam deÄiÅkenleri - tanımlamıÅtır:
+ÃrneÄin, aÅaÄıdaki gibi, daha yararlı olacak ek ortam deÄiÅkenleri + alabilirsiniz.
- REDIRECT_HTTP_ACCEPT=*/*, image/gif, image/x-xbitmap,
- image/jpeg
- REDIRECT_HTTP_USER_AGENT=Mozilla/1.1b2 (X11; I; HP-UX A.09.05
- 9000/712)
- REDIRECT_PATH=.:/bin:/usr/local/bin:/etc
+ REDIRECT_HTTP_ACCEPT=*/*, image/gif, image/jpeg, image/png
+ REDIRECT_HTTP_USER_AGENT=Mozilla/5.0 Fedora/3.5.8-1.fc12 Firefox/3.5.8
+ REDIRECT_PATH=.:/bin:/usr/local/bin:/sbin
REDIRECT_QUERY_STRING=
REDIRECT_REMOTE_ADDR=121.345.78.123
- REDIRECT_REMOTE_HOST=ooh.ahhh.dom
- REDIRECT_SERVER_NAME=batti.balik.yan.gider.edu
+ REDIRECT_REMOTE_HOST=client.example.com
+ REDIRECT_SERVER_NAME=www.example.edu
REDIRECT_SERVER_PORT=80
- REDIRECT_SERVER_SOFTWARE=Apache/0.8.15
- REDIRECT_URL=/cgi-bin/hatalar.pl
+ REDIRECT_SERVER_SOFTWARE=Apache/2.2.15
+ REDIRECT_URL=/cgi-bin/buggy.pl
REDIRECT_
önekine dikkat edin.
Yeni adrese (hedefin bir CGI betiÄi veya SSI sayfası olduÄu
- kabulüyle) en azından REDIRECT_URL
ve
- REDIRECT_QUERY_STRING
deÄiÅkenleri aktarılır. DiÄer
- deÄiÅkenler ise sadece hata veya sorunun öncesinde mevcut oldukları
- takdirde aktarılacaklardır. EÄer harici yönlendirmeyi
- ErrorDocument
yönergesi
- üzerinden yapıyorsanız bunlara None deÄeri
- atanacaktır. (Yönlendirme adresi http:
ile baÅlıyorsa
- adres aynı sunucuya ait olsa bile bu bir harici yönlendirme olarak
- ele alınır.)
REDIRECT_
ortam deÄiÅkenleri, yönlendirme öncesi varolan
+ ortam deÄiÅkenlerinden üretilir. Bunlar önlerine REDIRECT_
+ getirilerek yeniden isimlendirilir. ÃrneÄin,
+ HTTP_USER_AGENT
deÄiÅkeni
+ REDIRECT_HTTP_USER_AGENT
haline gelir.
REDIRECT_URL
, REDIRECT_STATUS
ve
+ REDIRECT_QUERY_STRING
mutlaka atanır. DiÄer baÅlıklarla
+ ilgili olanlar ise hata durumu öncesinde mevcut oldukları takdirde
+ üretilirler.
EÄer ErrorDocument
hedefi bir
+ harici yönlendirme ise bunların hiçbiri
+ üretilmez (sunucunun bulunduÄu konaÄı hedeflese bile http:
+ ile baÅlayan herÅey harici yönlendirme sayılır).
ErrorDocument
yönergesinin
- .htaccess
dosyalarında kullanılması sadece AllowOverride
yönergesine FileInfo
- atanmıÅsa mümkündür.
Bazı örnekler:
- -
- ErrorDocument 500 /cgi-bin/hata-kurtarma
- ErrorDocument 500 "Pardon, galiba bizim betik hata verdi."
- ErrorDocument 500 http://xxx/
- ErrorDocument 404 /ozuru_kabahatinden_buyuk/yok.html
- ErrorDocument 401 /Uyeler/NASIL_uye_olunur.html
-
Burada sözdizimi Åöyledir:
- -
- ErrorDocument <3-rakamlı-kod> <eylem>
-
eylem
Åunlardan biri olabilir:
Hata yanıtınızı üretmek için sunucu taraflı içerik yerleÅtirme, bir + CGI betiÄi veya baÅka bir eylemciyi devingen eylemci olarak + kullanıyorsanız, bu yanıtı özelleÅtirmek için bu kullanıma özel + üretilmiÅ ortam deÄiÅkenlerini kullanmak isteyebilirsiniz.
-Apacheânin yönlendirme ile ilgili davranıÅı bir CGI betiÄi veya SSI - sayfası sözkonusu olduÄunda bazı ek ortam deÄiÅkenleri ile - yapılandırılabilir.
- -Yönlendirme yapılan betikte standart CGI deÄiÅkenleri kullanılırdı. - Yönlendirmenin kaynaÄı ile ilgili bir belirtiye rastlanmazdı.
- - -Yönlendirme yapılan betikte kullanılmak üzere özel olarak
- tanımlanmıŠortam deÄiÅkenleri vardır. Her deÄiÅkenin ismi
- REDIRECT_
ile baÅlar. REDIRECT_
ortam
- deÄiÅkenleri, yönlendirme öncesinde tanımlanmıŠCGI ortam
- deÄiÅkenlerinin isimlerinin baÅına REDIRECT_
öneki
- getirilerek oluÅturulur. Yani, HTTP_USER_AGENT
deÄiÅkeni
- REDIRECT_HTTP_USER_AGENT
haline gelir. Bunlara ek
- olarak, betiÄe olayın izini sürmekte yardımcı olması için
- REDIRECT_URL
ve REDIRECT_STATUS
- deÄiÅkenleri tanımlanmıÅtır. EriÅim günlüÄüne özgün adresle birlikte
- yönlendirme adresi de kaydedilir.
EÄer ErrorDocument
yönergesi
- bir yerel CGI betiÄine yönlendirme belirtiyorsa, hatanın kaynaÄı
- hakkında istemciye bilgi vermek amacıyla betiÄin çıktısında bir
- "Status:
" baÅlık alanına yer verilmesi önerilir.
- ÃrneÄin, bir Perl betiÄi Åunları içerebilirdi:
ErrorDocument
yönergesi bir CGI
+ betiÄine bir yerel yönlendirme belirtiyorsa, hatanın kaynaÄı hakkında
+ istemciye bilgi vermek amacıyla betiÄin çıktısında bir
+ "Status:
" baÅlık alanına yer verilmelidir. ÃrneÄin, bir
+ Perl betiÄi Åunları içerebilirdi:
...
- print "Content-type: text/html; charset=UTF-8\n";
+ print "Content-type: text/html\n";
printf "Status: %s durumu saptandı.\n", $ENV{"REDIRECT_STATUS"};
...
EÄer betik, 404 Not Found
gibi, belli bir
- hata durumunu ele almaya adanmıÅsa duruma özel kod ve hata metni
+
EÄer betik, 404 Not Found
gibi, belli bir hata
+ durumunu ele almaya adanmıÅsa duruma özel kod ve hata metni
kullanılabilir.
EÄer yanıt, (istemci taraflı yönlendirme yapılırken) bir
- Location:
baÅlıÄı da içeriyorsa betiÄin çıktıya uygun
- bir Status:
baÅlıÄı (302 Found
gibi)
- eklemesinin gerekli oluÅuna dikkat ediniz. Aksi takdirde,
- Location:
baÅlıÄı etkisiz olabilir.
Location:
baÅlıÄı da içeriyorsa betiÄin çıktıya uygun bir
+ Status:
baÅlıÄı (302 Found
) eklemesinin
+ gerekli oluÅuna dikkat ediniz. Aksi takdirde, Location:
+ baÅlıÄı etkisiz olabilir.
+
+
+Apache HTTP Sunucusunun kurulumunda, 16 dile çevrilmiŠözel hata
+ iletileri belgeleri içeren bir dizin bulunmaktadır. Ayrıca,
+ conf/extra
yaplandırma dizininde bu özelliÄi etkin kılmak
+ için yapılandırmaya dahil edilebilecek bir yapılandırma dosyası
+ vardır.
Sunucu yapılandırma dosyanızda Åöyle satırlar görebilirsiniz:
+ +
+ # Multi-language error messages
+ #Include conf/extra/httpd-multilang-errordoc.conf
+
Bu Include
satırını açıklama olmaktan çıkarırsanız
+ bu özelliÄi etkinleÅtirmiÅ olursunuz. Böylece, istemcinin tarayıcısında
+ belirtilmiÅ dil tercihine uygun dil uzlaÅımlı hata iletileri
+ saÄlanır.
Ek olarak, bu belgeler çeÅitli REDIRECT_
deÄiÅkenleri
+ içerir. Böylece, son kullanıcıya neler olduÄu ve Åimdi ne yapması
+ beklendiÄi hakkında ek bilgiler saÄlanabilir.
Bu belgeleri istediÄiniz kadar özelleÅtirebilir, kullanıcıya siteniz + hakkında ve orada bulabilecekleri Åeylere dair faydalı bilgiler de + saÄlayabilirsiniz.
+ +Bu özelliÄi kullanmak için mod_include
ve
+ mod_negotiation
etkin kılınmalıdır.
Mevcut Diller: en |
es |
diff --git a/docs/manual/custom-error.xml.meta b/docs/manual/custom-error.xml.meta
index 38c922cb47..3a15b5a4cf 100644
--- a/docs/manual/custom-error.xml.meta
+++ b/docs/manual/custom-error.xml.meta
@@ -12,6 +12,6 @@
Açıklama: | Sunucuya yapılan isteklerin günlük kayıtlarının tutulması |
---|---|
Durum: | Temel |
Belirteç | Açıklama |
---|---|
%% |
- Yüzde imi | Yüzde imi. |
%a |
- Uzak IP adresi |
%A |
- Yerel IP adresi |
%B |
+ Uzak IP adresi ve isteÄin portu. |
%{c}a |
+ baÄlantının emsal IP adresi and portu
+ (mod_remoteip modülüne bakın). |
%A |
+ Yerel IP adresi. |
%B |
HTTP baÅlıkları hariç, yanıtın bayt cinsinden uzunluÄu. |
%b |
+|
%b |
HTTP baÅlıkları hariç, yanıtın bayt cinsinden uzunluÄu. OGB
biçeminde hiç bayt gönderilmemiÅse günlüÄe '- ' yerine
'0 ' çıktılanır. |
%{DEÄİÅKEN}C |
+|
%{DEÄİÅKEN}C |
İstek içinde sunucuya gönderilen DEÄİÅKEN çerezinin - içeriÄi. |
%D |
+ içeriÄi. Sadece 0 sürümlü çerezler tam olarak desteklenir.|
%D |
Mikrosaniye cinsinden isteÄi sunmak için harcanan zaman. |
%{DEÄİÅKEN}e |
+|
%{DEÄİÅKEN}e |
DEÄİÅKEN ortam deÄiÅkeninin içeriÄi. |
%f |
- Dosya ismi |
%h |
- Uzak konak |
%H |
- İstek Protokolü |
%{DEÄİÅKEN}i |
+|
%f |
+ Dosya ismi. |
%h |
+ Uzak konak ismi. HostnameLookups yönergesine öntanımlı olan
+ Off deÄeri atanmıÅsa, IP adresi günlüÄe kaydedilir. Bir
+ kaç konak için konak ismi de günlüÄe kaydoluyorsa muhtemelen onların
+ isimlerini içeren eriÅim denetim yönergelerine sahipsinizdir. Bak: Require host. |
%H |
+ İstek Protokolü. |
%{DEÄİÅKEN}i |
İstekle birlikte sunucuya gönderilen
DEÄİÅKEN: baÅlık satır(lar)ının
içeriÄi. DiÄer modüllerde (örn. mod_headers )
- yapılan deÄiÅikliklerden etkilenir. |
%k |
+ yapılan deÄiÅikliklerden etkilenir. Modüllerin çoÄu bunu
+ deÄiÅtirdiÄinde önceki istek baÅlık isminin ne olduÄuyla
+ ilgileniyorsanız, baÅlıÄı bir ortam deÄiÅkenine kaydetmek için
+ |
%k |
Bu baÄlantıda iÅlenen isteklerin sayısı; yani örneÄin,
'1' deÄeri baÄlantı kurulduktan sonraki ilk kalıcı baÄlantıyı,
'2', ikinci baÄlantıyı, ..., vb. gösterir;
KeepAlive kullanılmıÅsa
deÄer anlamlıdır; aksi takdirde deÄer daima 0âdır. |
%l |
+|
%l |
Uzak kullanıcı kimliÄi (saÄlanmıÅsa, identd üzerinden).
mod_ident modülü mevcut ve IdentityCheck yönergesine deÄer
olarak On atanmıŠolmadıkça bu belirteç için günlüÄe
tire imi yazılır. |
%L |
+ Hata günlüÄündeki istek günlük kimliÄi (veya bu istek için hata + günlüÄüne hiçbir Åey kaydedilmemise '-'). Bu hataya neyin sebep + olduÄunu öÄrenmek için ilgili hata günlüÄü satırına bakın. |
%m |
- İstek yöntemi | İstek yöntemi. |
%{DEÄİÅKEN}n |
DiÄer modüldeki DEÄİÅKEN bilgisinin içeriÄi. |
%{DEÄİÅKEN}o |
Yanıttaki DEÄİÅKEN: baÅlık satır(lar)ının
içeriÄi. |
%p |
- Sunucunun isteÄi sunduÄu meÅru port | Sunucunun isteÄi sunduÄu meÅru port. |
%{biçem}p |
Sunucunun veya istemcinin gerçek portu veya sunucunun isteÄi
sunduÄu meÅru port. Geçerli biçemler: canonical ,
@@ -148,15 +162,36 @@
|
%r |
İsteÄin ilk satırı. |
%s |
- Durum. Dahili olarak yönlendirilen istekler için isteÄin *özgün*
- durumudur --- isteÄin son durumu için %>s
- kullanınız. | Durum. Dahili olarak yönlendirilmiÅ istekler için isteÄin
+ özgün durumudur. İsteÄin son durumu için
+ %>s kullanınız. |
%t |
- İsteÄin alındıÄı tarih ve saat (standart ingiliz biçemi). | [18/Sep/2011:19:18:28 -0400] biçeminde isteÄin
+ alındıÄı tarih ve saat. Sondaki sayı zaman diliminin GMT'ye
+ uzaklıÄıdır. |
%{biçem}t |
İsteÄin alındıÄı tarih ve saat; biçem
- strftime(3) biçeminde belirtilmelidir (genelde
- yerelleÅtirme amaçlı). |
sec | Mutlak zaman baÅlangıcından (epoch) + beri geçen saniye sayısı |
msec | Mutlak zaman baÅlangıcından beri + geçen milisaniye sayısı |
usec | Mutlak zaman baÅlangıcından beri + geçen mikrosaniye sayısı |
msec_frac | milisaniyelik kesir |
usec_frac | mikrosaniyelik kesir |
strftime(3)
biçemlemesiyle birlikte yer alamazlar fakat
+ çok sayıda %{biçem}t
kullanılabilir.
+
%T
%u
-
= (Apache 1.3âün son sürümlerinde bu belirteç %c
idi
- fakat geçmiÅe yönelik olarak %{isim}c
ssl
- sözdizimi ile çeliÅiyordu.)
%I
mod_logio
etkin olmalıdır.%O
mod_logio
etkin olmalıdır.Belli öÄelerin sadece belli durum kodlarıyla ilgili yanıtlarla
basılabilmesi için bu durum kodları % iminden hemen sonra virgüllerle
- ayrılmıŠolarak yazılabilir. ÃrneÄin,
- "%400,501{User-agent}i"
belirteci,
- User-agent
baÅlıÄını sadece 400 ve 501 hatalarında
- günlüÄe kaydeder. DiÄer durum kodları için günlüÄe "-"
- yazılır. Durum kodlarını olumsuzlamak için baÅa bir "!
"
- konabilir. ÃrneÄin, "%!200,304,302{Referer}i"
belirteci,
- 200,304,302 durum kodlarından biriyle dönmeyen tüm istekler için
- Referer
baÅlıÄını durum koduyla birlikte günlüÄe
- kaydedecektir.
!
" konabilir.
+
+ Biçem Dizgesi | +Anlamı |
---|---|
%400,501{User-agent}i |
+ Sadece 400 ve 501 hatalarında User-agent günlüÄe
+ kaydedilir. DiÄer durum kodları için günlüÄe "-" yazılır.
+ |
%!200,304,302{Referer}i |
+ 200,304,302 durum kodlarından biriyle dönmeyen tüm istekler için
+ Referer baÅlıÄı durum koduyla birlikte günlüÄe
+ kaydedilir. Aksi takdirde günlüÄe "- " yazılır.
+ |
İsteÄin dahili olarak yönlendirilmesinde özgün durumunun mu yoksa son
durumunun mu hesaba katılacaÄı "<" ve ">" deÄiÅtiricileri ile
@@ -238,6 +274,13 @@
mod_logio
modülü tarafından saÄlanan %O
biçem belirteci kullanılmaktadır.
Ek bilgi: mod_cache
standat bir eylemci olarak deÄil
+ hızlı bir eylemci olarak gerçeklenmiÅtir. Bu nedenle, içerik
+ arabelleklemesi sözkonusu olduÄunda %R
biçem dizgesi
+ herhangi bir eylemci bilgisi döndürmeyecektir.
"%{User-agent}i"
msec_frac
gibi ek biçem dizgeciklerini kullanan bir zaman
+ biçemi belirtmek isterseniz %{format}t
biçem dizgesini
+ defalarca kullanabilirsiniz:
"%{%d/%b/%Y %T}t.%{msec_frac}t %{%z}t"
CustomLog dosya|borulu-süreç
biçem|takma-ad
-[env=[!]ortam-deÄiÅkeni]
|
" boru karakteri ile öncelenmiŠolarak günlük
bilgisini standart girdisinden kabul edecek sürecin ismi (veya komut
- satırı).
+ satırı) Daha fazla bilgi için borulu
+ günlüklere bakınız.
Bir borulu süreç kullanılmıÅsa, süreç httpd
âyi
@@ -352,11 +406,12 @@
CustomLog logs/access_log "%h %l %u %t \"%r\" %>s %b"
Ãçüncü argüman isteÄe baÄlı olup, sunucu ortamında belli bir deÄiÅkenin
- varlıÄına baÄlı olarak belli bir isteÄin günlüÄe kaydedilip
- kaydedilmeyeceÄini belirler. EÄer istek için belirtilen ortam deÄiÅkeni mevcutsa (veya
- 'env=!deÄiÅken
' durumunda mevcut deÄilse) istek
- günlüÄe kaydedilir.
Ãçüncü argüman isteÄe baÄlı olup,belli bir isteÄin günlüÄe kaydedilip
+ kaydedilmeyeceÄini belirler. KoÅul, sunucu ortamında belli bir deÄiÅkenin varlıÄı veya
+ yokluÄu olabilir (bir 'env=!isim
' durumu).
+ İstenirse koÅul keyfi bir mantıksal ifade
+ olarak da belirtilebilir. EÄer koÅul saÄlanmazsa istek günlüÄe
+ kaydedilmez.
Ortam deÄiÅkenleri mod_setenvif
ve/veya mod_rewrite
modülleri kullanılarak her istek
diff --git a/docs/manual/mod/mod_log_config.xml.ja b/docs/manual/mod/mod_log_config.xml.ja
index 74353425ed..90b43b6958 100644
--- a/docs/manual/mod/mod_log_config.xml.ja
+++ b/docs/manual/mod/mod_log_config.xml.ja
@@ -1,7 +1,7 @@
-
+
+
-
+
+
+