684 lines
43 KiB
XML
684 lines
43 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head>
|
||
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
|
||
<!--
|
||
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||
This file is generated from xml source: DO NOT EDIT
|
||
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||
-->
|
||
<title>Günlük Dosyaları - Apache HTTP Sunucusu Sürüm 2.4</title>
|
||
<link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
|
||
<link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
|
||
<link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="./style/css/prettify.css" />
|
||
<script src="./style/scripts/prettify.min.js" type="text/javascript">
|
||
</script>
|
||
|
||
<link href="./images/favicon.ico" rel="shortcut icon" /></head>
|
||
<body id="manual-page"><div id="page-header">
|
||
<p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p>
|
||
<p class="apache">Apache HTTP Sunucusu Sürüm 2.4</p>
|
||
<img alt="" src="./images/feather.png" /></div>
|
||
<div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
|
||
<div id="path">
|
||
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Sunucusu</a> > <a href="http://httpd.apache.org/docs/">Belgeleme</a> > <a href="./">Sürüm 2.4</a></div><div id="page-content"><div id="preamble"><h1>Günlük Dosyaları</h1>
|
||
<div class="toplang">
|
||
<p><span>Mevcut Diller: </span><a href="./en/logs.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
||
<a href="./fr/logs.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
|
||
<a href="./ja/logs.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
|
||
<a href="./ko/logs.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
|
||
<a href="./tr/logs.html" title="Türkçe"> tr </a></p>
|
||
</div>
|
||
|
||
<p>Bir HTTP sunucusunu verimli şekilde yönetebilmek için oluşabilecek
|
||
sorunlardan başka sunucunun başarımı ve etkinliği hakkında da bazı geri
|
||
bildirimler almak gerekir. Apache HTTP Sunucusu çok kapsamlı ve esnek
|
||
bir günlükleme yeteneğine sahiptir. Bu belgede sunucunun günlükleme
|
||
yeteneğini nasıl yapılandıracağınızdan ve günlük kayıtlarını nasıl
|
||
yorumlayacağınızdan bahsedilecektir.</p>
|
||
</div>
|
||
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#overview">Giriş</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#security">Güvenlik Uyarısı</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#errorlog">Hata Günlüğü</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#permodule">Modüllere göre günlükleme</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#accesslog">Erişim Günlüğü</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#rotation">Günlük Çevrimi</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#piped">Borulu Günlükler</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#virtualhost">Sanal Konaklar</a></li>
|
||
<li><img alt="" src="./images/down.gif" /> <a href="#other">Diğer Günlük Dosyaları</a></li>
|
||
</ul><h3>Ayrıca bakınız:</h3><ul class="seealso"><li><a href="#comments_section">Yorumlar</a></li></ul></div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="overview" id="overview">Giriş</a></h2>
|
||
|
||
|
||
<table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="./mod/mod_log_forensic.html">mod_log_forensic</a></code></li><li><code class="module"><a href="./mod/mod_logio.html">mod_logio</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li></ul></td><td /></tr></table>
|
||
|
||
<p>Apache HTTP Sunucusu, isteğin ilk alınışından itibaren, URL eşleme
|
||
işlemleri, bağlantının son çözümlemesi ve bu işlemler sırasına ortaya çıkan
|
||
hatalar da dahil olmak üzere sunucunuzda meydana gelen herşeyi günlüklemek
|
||
için çok çeşitli mekanizmalar içerir. Buna ek olarak, günlükleme
|
||
yetenekleri sağlayan üçüncü parti modüller de kullanılabilir veya mevcut
|
||
günlük dosyalarına girdiler enjekte edilebilir. Ayrıca, CGI programları,
|
||
PHP betikleri ve benzerleri sunucu hata günlüğüne kendi iletilerini
|
||
gönderebilirler.</p>
|
||
|
||
<p>Bu belgede Apache HTTP Sunucusunun standart parçası olan günlükleme
|
||
modülleri hakkında bilgi verilecektir.</p>
|
||
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="security" id="security">Güvenlik Uyarısı</a></h2>
|
||
|
||
|
||
<p>Apache httpd’nin günlük dosyalarını yazdığı dizine yazabilen birinin sunucuyu
|
||
başlatan kullanıcı kimliğine (bu genellikle root olur) erişim
|
||
kazanabileceğine hemen hemen kesin gözüyle bakılabilir. Sonuçlarının
|
||
neler olacağını kestiremiyorsanız günlüklerin yazıldığı dizinde <em>hiç
|
||
kimseye</em> yazma erişimi vermeyin; ayrıntılı bilgi için <a href="misc/security_tips.html">güvenlik ipuçları</a> belgesine
|
||
bakınız.</p>
|
||
|
||
<p>Buna ilaveten, günlük dosyaları istemci tarafından sağlanmış bilgiler
|
||
de içerebilir. Bu nedenle, kötü niyetli istemcilerin günlük dosyalarına
|
||
denetim karakterleri girmeleri olasılığına karşı ham günlükler ele
|
||
alınırken dikkatli olunmalıdır.</p>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="errorlog" id="errorlog">Hata Günlüğü</a></h2>
|
||
|
||
<table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/core.html">core</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code></li><li><code class="directive"><a href="./mod/core.html#errorlogformat">ErrorLogFormat</a></code></li><li><code class="directive"><a href="./mod/core.html#loglevel">LogLevel</a></code></li></ul></td></tr></table>
|
||
|
||
<p>İsmi ve yeri <code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code> yönergesi
|
||
ile belirtilen sunucu hata günlüğü, en önemli günlük dosyasıdır. Apache
|
||
httpd tarafından istekler işlenirken saptanan hatalar ve tanı bilgileri
|
||
bu dosyaya gönderilir. Sunucuyu başlatırken veya sunucu çalışırken bir
|
||
sorunla karşılaşıldığında, neyin yanlış gittiğini öğrenmek için
|
||
bakılacak ilk yer burasıdır. Günlük kaydı çoğunlukla sorunun nasıl
|
||
düzeltileceği ile ilgili ayrıntıları da içerir.</p>
|
||
|
||
<p>Hata günlüğü normal olarak bir dosyaya yazılır (genellikle, dosyanın
|
||
ismi Unix sistemlerinde <code>error_log</code>, OS/2 ve Windows’ta ise
|
||
<code>error.log</code>’dur). Ayrıca, Unix sistemlerinde sunucunun
|
||
hataları <code>syslog</code>’a veya <a href="#piped">borulamak suretiyle
|
||
bir programa</a> aktarması da mümkündür.</p>
|
||
|
||
<p>Hata günlüğünün biçemi <code class="directive"><a href="./mod/core.html#errorlogformat">ErrorLogFormat</a></code> yönergesi ile belirlenir. Bu yönergeyi
|
||
kullanarak günlüklenen değerleri özelleştirebilirsiniz. Bir biçem
|
||
belirtmezseniz öntanımlı biçem kullanılır. Örnek tipik bir hata iletisi
|
||
içermektedir:</p>
|
||
|
||
<div class="example"><p><code>
|
||
[Fri Sep 09 10:42:29.902022 2011] [core:error] [pid 35708:tid 4328636416]
|
||
[client 72.15.99.187] Dosya yok: /usr/local/apache2/htdocs/favicon.ico
|
||
</code></p></div>
|
||
|
||
<p>Günlük girdisinin ilk öğesi iletinin yazıldığı tarih ve saatten oluşur.
|
||
İkincisi iletiyi üreten modülün ismi (bu durumda: core) ile raporlanan
|
||
bilginin önem derecesini belirtir. Bunu varsa sürecin kimliği ve yine
|
||
varsa evre kimliği izler. Sonraki öğe hatanın üretilmesine sebep olan
|
||
istemcinin IP adresini içerir. Kalanı iletinin kendisidir (duruma
|
||
bakılırsa bir dosyaya yapılan istek yerine getirilememiş).</p>
|
||
|
||
<p>Hata günlüğünde görünebilecek ileti çeşitliliği oldukça fazladır. Çoğu
|
||
yukarıdaki örneğin benzeridir. Hata günlüğü ayrıca, CGI betiklerinin
|
||
hata ayıklama çıktılarını da içerir. Bir CGI betiği tarafından standart
|
||
hataya (<code>stderr</code>) yazılan her türlü bilgi doğrudan hata
|
||
günlüğüne kopyalanır.</p>
|
||
|
||
<p>Hata günlüğüne ve erişim günlüğüne <code>%L</code> dizgeciği konularak
|
||
erişim günlüğündeki girdi ile hata günlüğündeki girdiyi ilişkilendirecek
|
||
bir günlük girdisi kimliği oluşturulabilir.
|
||
<code class="module"><a href="./mod/mod_unique_id.html">mod_unique_id</a></code> yüklüyse günlük girdisi kimliği olarak
|
||
onun eşsiz istek kimliği de kullanılır.</p>
|
||
|
||
<p>Sunucuyu denerken olası sorunlara karşı hata günlüğünü sürekli
|
||
izlemelisiniz. Unix sistemlerinde bunu şöyle bir komutla
|
||
sağlayabilirsiniz:</p>
|
||
|
||
<div class="example"><p><code>
|
||
tail -f error_log
|
||
</code></p></div>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="permodule" id="permodule">Modüllere göre günlükleme</a></h2>
|
||
|
||
|
||
<p><code class="directive"><a href="./mod/core.html#loglevel">LogLevel</a></code> yönergesi, günlük
|
||
iletisinin üretilmesine sebep olan modüle bağlı bir önem seviyesi
|
||
belirleyebilmenizi sağlar. Bu yolla sorun yaşadığınız modülle ilgili
|
||
günlük musluklarını sonuna kadar açabiliri ek olarak ilgilendiğiniz diğer
|
||
modüllerle ilgili ayrıntıları da edinebilirsiniz. Özellikle
|
||
<code class="module"><a href="./mod/mod_proxy.html">mod_proxy</a></code> veya <code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code> gibi
|
||
modüllerde yapılmak isteneni denerken neler olup bittiğini ayrıntılarıyla
|
||
bilmek istediğiniz durumlarda kullanışlıdır.</p>
|
||
|
||
<p>Bunu <code class="directive">LogLevel</code> yönergesinde modülün ismini
|
||
belirterek yapabilirsiniz:</p>
|
||
|
||
<pre class="prettyprint lang-config">LogLevel info rewrite:trace5</pre>
|
||
|
||
|
||
<p>Bu satırla ana <code class="directive">LogLevel</code> info'ya ayarlanırken
|
||
<code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code> için musluk <code>trace5</code> seviyesine
|
||
kadar açılmaktadır.</p>
|
||
|
||
<div class="note">Bu yönerge, Apache HTTP Sunucusunun evvelki sürümlerinde mevcut olan
|
||
<code>RewriteLog</code> gibi günlükleme modüllerinin yerini almıştır.
|
||
</div>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="accesslog" id="accesslog">Erişim Günlüğü</a></h2>
|
||
|
||
|
||
<table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="./mod/mod_setenvif.html">mod_setenvif</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code></li><li><code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code></li></ul></td></tr></table>
|
||
|
||
<p>Sunucu erişim günlüğü sunucu tarafından işleme alınan tüm istekleri
|
||
kaydeder. Erişim günlüğünün yeri ve içeriği <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesi ile belirlenir.
|
||
<code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code> yönergesi ile
|
||
günlük içeriğini kişiselleştirmek mümkündür. Bu bölümde sunucunun
|
||
bilgileri erişim günlüğüne kaydetmesi için nasıl yapılandırılacağından
|
||
bahsedilecektir.</p>
|
||
|
||
<p>Bilginin erişim günlüğünde saklanması günlük yönetiminde ilk
|
||
adımı oluşturur. Sonraki adım yararlı istatistikleri üretmek için bu
|
||
bilgiyi incelemektir. Günlük incelemesi bu belgenin kapsamına dahil
|
||
değildir ve aslında bu işlem sunucunun yaptığı işlerden biri
|
||
değildir.</p>
|
||
|
||
<p>Apache httpd’nin çeşitli sürümlerinde erişim günlüklerini denetlemek
|
||
için kullanılan diğer modüller ve yönergeler arasında mod_log_referer,
|
||
mod_log_agent modülleri ve <code>TransferLog</code> yönergesi
|
||
sayılabilir. Artık, daha eski tüm diğer yönergelerin işlevselliklerini
|
||
bir araya toplayan <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesi kullanılmaktadır.</p>
|
||
|
||
<p>Erişim günlüğünün girdi biçemi kolayca isteğe göre
|
||
düzenlenebilmektedir. Biçemi belirtmekte kullanılan biçem dizgesi, C
|
||
tarzı printf(1) biçem dizgesini andırır. Sonraki bölümlerde bazı
|
||
örneklere yer verilmiştir. Biçem dizgesini oluşturan belirteçlerin tam
|
||
listesi için <code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code> belgesinin <a href="mod/mod_log_config.html#formats">Günlük Girdilerinin
|
||
Kişiselleştirilmesi</a> bölümüne bakınız.</p>
|
||
|
||
<h3><a name="common" id="common">Ortak Günlük Biçemi (OGB)</a></h3>
|
||
|
||
|
||
<p>Erişim günlüğü için sıklıkla kullanılan bir yapılandırma:</p>
|
||
|
||
<pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %>s %b" common
|
||
CustomLog logs/access_log common</pre>
|
||
|
||
|
||
<p>İlk satırda belli bir biçem dizgesi için <code>common</code> diye bir
|
||
<em>takma ad</em> tanımlanmaktadır. Biçem dizgesi, sunucuya hangi
|
||
belli bir bilgi parçalarını günlükleyeceğini söyleyen % imli biçem
|
||
belirteçlerinden oluşur. Biçem dizgesine ayrıca dizgesel sabitler de
|
||
yerleştirilebilir ve bunlar erişim günlüğüne oldukları gibi
|
||
kopyalanırlar. Biçem dizgesi içinde çift tırnak karakteri (") biçem
|
||
dizgesini vaktinden önce sonlandırmaması için ters bölü çizgisi ile
|
||
öncelenmelidir. Biçem dizgesi ayrıca, satır sonlarını belirtmek için
|
||
"<code>\n</code>" ve sekmeleri belirtmek için "<code>\t</code>"
|
||
denetim karakterlerini de içerebilir.</p>
|
||
|
||
<p><code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesi
|
||
evvelce tanımlanmış bir <em>takma adı</em> kullanarak yeni bir günlük
|
||
dosyası tanımlar. Erişim günlüğünün dosya ismi bölü çizgisi ile
|
||
başlamadıkça dosya yolunun <code class="directive"><a href="./mod/core.html#serverroot">ServerRoot</a></code> değerine göreli olduğu varsayılır.</p>
|
||
|
||
<p>Yukarıdaki yapılandırma günlük dosyasına girdileri Ortak Günlük
|
||
Biçemi (Common Log Format) adı verilen standart biçemde yazar.
|
||
Bu standart biçem başka HTTP sunucuları tarafından da kullanılır ve
|
||
çoğu günlük inceleme yazılımı tarafından tanınır. Ortak Günlük
|
||
Biçeminde üretilen günlük girdileri şöyle görünür:</p>
|
||
|
||
<div class="example"><p><code>
|
||
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET
|
||
/apache_pb.gif HTTP/1.0" 200 2326
|
||
</code></p></div>
|
||
|
||
<p>Bu günlük girdisini parça parça açıklayalım:</p>
|
||
|
||
<dl>
|
||
<dt><code>127.0.0.1</code> (<code>%h</code>)</dt>
|
||
|
||
<dd>Bu, sunucuya istek yapan istemcinin (uzak konağın) IP adresidir.
|
||
Eğer <code class="directive"><a href="./mod/core.html#hostnamelookups">HostnameLookups</a></code>
|
||
yönergesine <code>On</code> değeri atanmışsa sunucu bu IP adresi
|
||
için DNS sorgusu yapacak ve IP adresi yerine bulduğu konak ismini
|
||
yazmaya çalışacaktır. Bununla birlikte, bu işlem sunucuyu epeyce
|
||
yavaşlattığından önerilmemektedir. Konak isimlerini saptamak için en
|
||
iyisi günlük girdilerini <code class="program"><a href="./programs/logresolve.html">logresolve</a></code> gibi bir
|
||
günlük işlemcisinden geçirmektir. Burada raporlanan IP adresi
|
||
doğrudan istemcinin IP adresi olmayabilir. Eğer sunucu ile istemci
|
||
arasında bir vekil sunucu varsa bu IP adresi, vekil sunucunun IP
|
||
adresi olacaktır.</dd>
|
||
|
||
<dt><code>-</code> (<code>%l</code>)</dt>
|
||
|
||
<dd>Çıktıdaki bir "tire" imi istenen bilgi parçasının mevcut olmadığı
|
||
anlamına gelir. Bu durumda, mevcut olmayan bilgi istemci makine
|
||
üzerinde <code>identd</code> tarafından belirlenen istemcinin RFC
|
||
1413 kimliğidir. Bu bilgi oldukça güvenilmezdir ve sıkıca denetlenen
|
||
iç ağlar haricinde hemen hemen asla kullanılmamalıdır. Apache,
|
||
<code class="directive"><a href="./mod/mod_ident.html#identitycheck">IdentityCheck</a></code> yönergesine
|
||
<code>On</code> değeri atanmış olmadıkça bu bilgiyi saptamaya
|
||
uğraşmaz.</dd>
|
||
|
||
<dt><code>frank</code> (<code>%u</code>)</dt>
|
||
|
||
<dd>Bu, belge isteğinde bulunan kişinin HTTP kimlik doğrulamasıyla
|
||
saptanan kullanıcı kimliğidir. Bu değer CGI betiklerine
|
||
<code>REMOTE_USER</code> ortam değişkeni ile sağlanır. Eğer istek
|
||
için durum kodu 401 ise (aşağıya bakınız) henüz kullanıcının kimliği
|
||
doğrulanmamış olacağından bu değere güvenilmemelidir. Eğer belge
|
||
parola korumalı değilse günlüğün bu kısmı da yukarıdaki gibi
|
||
"<code>-</code>" olacaktır.</dd>
|
||
|
||
<dt><code>[10/Oct/2000:13:55:36 -0700]</code>
|
||
(<code>%t</code>)</dt>
|
||
|
||
<dd>İsteğin alındığı tarih ve saat. Biçemi şöyledir:
|
||
|
||
<p class="indent">
|
||
<code>[gün/ay/yıl:saat:dakika:saniye dilim]<br />
|
||
gün = 2 hane<br />
|
||
ay = 3 harf<br />
|
||
yıl = 4 hane<br />
|
||
saat = 2 hane<br />
|
||
dakika = 2 hane<br />
|
||
saniye = 2 hane<br />
|
||
dilim = (`+' | `-') 4 hane</code>
|
||
</p>
|
||
<p>Günlük biçem dizgesinde zaman gösterim biçemini
|
||
<code>%{<em>biçem</em>}t</code> şeklinde belirtmek de mümkündür.
|
||
Buradaki <code><em>biçem</em></code> dizgesi, stardart C
|
||
kütüphanesindeki <code>strftime(3)</code> işlevi için tanımlanmış
|
||
biçem belirteçleriyle veya desteklenen özel belirteçlerle
|
||
oluşturulabilir. Ayrıntılı bilgi için <code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code>
|
||
<a href="mod/mod_log_config.html#formats">biçem dizgelerine</a>
|
||
bakın.</p>
|
||
</dd>
|
||
|
||
<dt><code>"GET /apache_pb.gif HTTP/1.0"</code>
|
||
(<code>\"%r\"</code>)</dt>
|
||
|
||
<dd>İstemciden alınan istek satırının çift tırnaklar arasında
|
||
gösterilmesi istenmiştir. İstek satırı en yararlı bilgi parçalarını
|
||
içerir. Birincisi, istemci tarafından kullanılan yöntem
|
||
<code>GET</code>’miş. İkinci olarak istemci
|
||
<code>/apache_pb.gif</code> dosyasını istemiş ve üçüncü olarak
|
||
istemci <code>HTTP/1.0</code> protokolünü kullanmış. İstek satırının
|
||
bazı parçalarını bağımsız olarak da günlüklemek mümkündür. Örneğin,
|
||
"<code>%m %U%q %H</code>" dizgesi, yöntem, yol, sorgu dizgesi ve
|
||
protokolü kaydedecektir; bu dizge "<code>%r</code>" biçem
|
||
belirtecinin tek başına yaptığı işi yapar.</dd>
|
||
|
||
<dt><code>200</code> (<code>%>s</code>)</dt>
|
||
|
||
<dd>Bu, sunucunun istemciye gönderdiği durum kodudur. İsteğin
|
||
başarıyla yerine getirilip getirilmediğini gösterdiği için bu bilgi
|
||
çok değerlidir. Durum kodu 2 ile başlıyorsa istek başarıyla yerine
|
||
getirilmiştir, 3 ile başlıyorsa yönlendirilmiştir, 4 ile başlıyorsa
|
||
istemci tarafında bir hata oluşmuştur, 5 ile başlıyorsa sunucuda bir
|
||
hata oluşmuştur. Olası hata kodlarının tam listesi <a href="http://www.w3.org/Protocols/rfc2616/rfc2616.txt">RFC2616 Hiper
|
||
Metin Aktarım Protokolü</a>nün 10. bölümünde bulunabilir.</dd>
|
||
|
||
<dt><code>2326</code> (<code>%b</code>)</dt>
|
||
|
||
<dd>Son parça istemciye döndürülen nesnenin yanıt başlığı hariç
|
||
uzunluğudur. Eğer istemciye bir içerik döndürülmemişse bu değer
|
||
"<code>-</code>" olacaktır. Bunun yerine günlüğe "<code>0</code>"
|
||
yazdırmak için <code>%B</code> belirtecini kullanınız.</dd>
|
||
</dl>
|
||
|
||
|
||
<h3><a name="combined" id="combined">Birleşik Günlük Biçemi</a></h3>
|
||
|
||
|
||
<p>Sıklıkla kullanılan diğer bir biçem dizgesi Birleşik Günlük Biçemi
|
||
(Combined Log Format) olup şöyle kullanılabilir:</p>
|
||
|
||
<pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
|
||
CustomLog log/access_log combined</pre>
|
||
|
||
|
||
<p>Bu biçem ilaveten 2 alan içermesi dışında Ortak Günlük Biçemi ile
|
||
aynıdır. İlave alanların ikisi de <code>%{<em>başlık</em>}i</code>
|
||
biçeminde olup buradaki <code><em>başlık</em></code>, HTTP isteğindeki
|
||
başlık alanlarından biridir. Bu biçemin kullanıldığı bir erişim
|
||
günlüğü girdisi şöyle olurdu:</p>
|
||
|
||
<div class="example"><p><code>
|
||
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET
|
||
/apache_pb.gif HTTP/1.0" 200 2326
|
||
"http://www.example.com/start.html" "Mozilla/4.08 [en]
|
||
(Win98; I ;Nav)"
|
||
</code></p></div>
|
||
|
||
<p>Ek alanlar:</p>
|
||
|
||
<dl>
|
||
<dt><code>"http://www.example.com/start.html"</code>
|
||
(<code>\"%{Referer}i\"</code>)</dt>
|
||
|
||
<dd>HTTP istek başlığı "Referer". İstemcinin raporladığı isteğin
|
||
kaynaklandığı URI. (Bu isteğin yapılmasını sağlayan bağlantıyı
|
||
içeren URL veya istek bir sayfanın bileşenleri ile ilgiliyse istenen
|
||
sayfanın URL’si olabilir.)</dd>
|
||
|
||
<dt><code>"Mozilla/4.08 [en] (Win98; I ;Nav)"</code>
|
||
(<code>\"%{User-agent}i\"</code>)</dt>
|
||
|
||
<dd>Tarayıcı kimliğini içeren HTTP istek başlığı. Bu istemcinin
|
||
tarayıcısının raporladığı kendi tanıtım bilgisidir.</dd>
|
||
</dl>
|
||
|
||
|
||
<h3><a name="multiple" id="multiple">Çok Sayıda Erişim Günlüğü</a></h3>
|
||
|
||
|
||
<p>Yapılandırma dosyasında çok sayıda <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesi kullanarak çok
|
||
sayıda erişim günlüğü kolayca oluşturulabilir. Örneğin aşağıdaki
|
||
yönergelerle 3 tane erişim günlüğü oluşturulacaktır. İlki temel OGB
|
||
bilgisini içerirken diğer ikisi isteğin kaynaklandığı yeri ve tarayıcı
|
||
kimliğini içerir. Son iki <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> satırı ayrıca, <code>ReferLog</code> ve
|
||
<code>AgentLog</code> yönergelerinin etkilerinin nasıl taklit
|
||
edileceğini de göstermektedir.</p>
|
||
|
||
<pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %>s %b" common
|
||
CustomLog logs/access_log common
|
||
CustomLog logs/referer_log "%{Referer}i -> %U"
|
||
CustomLog logs/agent_log "%{User-agent}i"</pre>
|
||
|
||
|
||
<p>Bu örnek ayrıca, <code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code> yönergesi ile bir takma ad tanımlamanın şart
|
||
olmadığını da göstermektedir. Günlük biçemi doğrudan <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesinde
|
||
belirtilebilir.</p>
|
||
|
||
|
||
<h3><a name="conditional" id="conditional">Şarta Bağlı Günlükler</a></h3>
|
||
|
||
|
||
<p>Bazı durumlarda istemcinin yaptığı isteğe bağlı olarak erişim
|
||
günlüğünde belli girdilerin dışlanması gerekebilir. Bu, <a href="env.html">ortam değişkenleri</a> sayesinde kolayca yerine
|
||
getirilebilir. Önce isteğin belli koşulları sağladığını belirten bir
|
||
ortam değişkeni ataması yapılır. Bu işlem <code class="directive"><a href="./mod/mod_setenvif.html#setenvif">SetEnvIf</a></code> yönergesi ile yapılır.
|
||
Sonra da, ortam değişkenine bağlı olarak isteklerin günlüğe dahil
|
||
edilip edilmeyeceği <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesinin
|
||
<code>env=</code> deyimi kullanılarak belirtilir. Bazı örnekler:</p>
|
||
|
||
<pre class="prettyprint lang-config"># yerel konaktan kaynaklanan istekleri imleyelim
|
||
SetEnvIf Remote_Addr "127\.0\.0\.1" kaydetme
|
||
# robots.txt dosyası isteklerini imleyelim
|
||
SetEnvIf Request_URI "^/robots\.txt$" kaydetme
|
||
# Kalanları günlüğe kaydedelim
|
||
CustomLog logs/access_log common env=!kaydetme</pre>
|
||
|
||
|
||
<p>Başka bir örnek olarak, Türkçe belge isteklerini bir dosyaya diğer
|
||
dillerdeki istekleri başka bir dosyaya kaydedelim.</p>
|
||
|
||
<pre class="prettyprint lang-config">SetEnvIf Accept-Language "tr" turkce
|
||
CustomLog logs/turkce_log common env=turkce
|
||
CustomLog logs/diger_diller_log common env=!turkce</pre>
|
||
|
||
|
||
<p>Bir arabellekleme senaryosuna arabelleğin verimli kullanılıp
|
||
kullanılmadığını bilmek isteyelim. Bu basitçe şöyle yapılabilir:</p>
|
||
|
||
<pre class="prettyprint lang-config">SetEnv CACHE_MISS 1
|
||
LogFormat "%h %l %u %t "%r " %>s %b %{CACHE_MISS}e" common-cache
|
||
CustomLog logs/access_log common-cache</pre>
|
||
|
||
|
||
<p><code class="module"><a href="./mod/mod_cache.html">mod_cache</a></code> önce <code class="module"><a href="./mod/mod_env.html">mod_env</a></code> modülünü
|
||
çalıştıracak ve başarılı olunduğu takdirde içeriği onsuz teslim
|
||
edecektir. Bu durumda arabellek kaybı <code>1</code> olarak
|
||
günlüklenirken arabellek sunumu <code>-</code> olarak
|
||
günlüklenecektir.</p>
|
||
|
||
<p><code>env=</code> sözdizimine ek olarak, <code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code> HTTP yanıt kodudaki koşul
|
||
değerlerini günlüklemeyi de destekler:</p>
|
||
|
||
<pre class="prettyprint lang-config">LogFormat "%400,501{User-agent}i" browserlog
|
||
LogFormat "%!200,304,302{Referer}i" refererlog</pre>
|
||
|
||
|
||
<p>Bu örnekte, HTTP durum kodu 400 veya 501 ise <code>User-agent</code>
|
||
başlığı günlüklenecektir. Aksi takdirde, günlüğe bir "-" yazılacaktır.
|
||
Benzer şekilde ikinci örnekte, HTTP durum kodu 200, 304 veya 302
|
||
<strong>değilse</strong> (durum kodlarının öncesindeki "!" imine
|
||
dikkat) <code>Referer</code> başlığı günlüklenecektir.</p>
|
||
|
||
<p>Koşula bağlı günlük kaydının çok esnek ve güçlü olabileceğini
|
||
göstermiş olsak da günlük içeriğini denetlemenin tek yolu bu değildir.
|
||
Günlük dosyaları sunucu etkinliğini eksiksiz olarak kaydedebildikleri
|
||
takdirde daha yararlı olurlar. Günlük dosyalarını sonradan işleme tabi
|
||
tutarak istenmeyen girdileri kaldırılmış bir kopya almak hem kolay hem
|
||
de daha yararlıdır.</p>
|
||
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="rotation" id="rotation">Günlük Çevrimi</a></h2>
|
||
|
||
|
||
<p>Yükü ağır sunucularda günlük dosyalarına kaydedilen bilginin miktarı
|
||
çok büyük boyutlara ulaşabilir. 10.000 istek içeren bir erişim günlüğü
|
||
yaklaşık 1MB yer kaplar. Etkin günlük dosyasını belirli aralıklarla
|
||
değiştirmek veya silmek gerekebilir. Apache httpd çalışırken dosyayı sürekli
|
||
açık tuttuğu ve yazdığı için bu işlem sunucu çalışırken yapılamaz. Bu
|
||
bakımdan, günlük dosyası değiştirildikten veya silindikten sonra yeni
|
||
dosyanın açılması için <a href="stopping.html">sunucunun yeniden
|
||
başlatılması</a> gerekir.</p>
|
||
|
||
<p><a href="stopping.html#graceful">Nazikçe yeniden başlatmak</a>
|
||
suretiyle sunucunun, mevcut ve bekleyen bağlantıları kaybetmeden yeni
|
||
günlük dosyalarını açması sağlanabilir. Bununla birlikte, bu işlem
|
||
sırasında sunucunun eski isteklere sunumu bitirene kadar eski günlük
|
||
dosyalarına yazmaya devam edebilmesi gerekir. Bu bakımdan, yeniden
|
||
başlatmanın ardından eski günlük dosyaları üzerinde bir işlem yapmadan
|
||
önce biraz beklemek gerekir. Günlük dosyalarını döndürürken kullanılan
|
||
senaryolarda genellikle eski günlük dosyaları yer kazanmak için
|
||
sıkıştırılırlar:</p>
|
||
|
||
<div class="example"><p><code>
|
||
mv access_log access_log.old<br />
|
||
mv error_log error_log.old<br />
|
||
apachectl graceful<br />
|
||
sleep 600<br />
|
||
gzip access_log.old error_log.old
|
||
</code></p></div>
|
||
|
||
<p>Günlük çevrimi yapmanın başka bir yolu da sonraki bölümde açıklandığı
|
||
gibi <a href="#piped">borulu günlükler</a> kullanmaktır.</p>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="piped" id="piped">Borulu Günlükler</a></h2>
|
||
|
||
|
||
<p>Apache httpd hata ve erişim günlüklerini doğrudan bir dosyaya yazmak
|
||
yerine bir boru üzerinden başka bir sürece yazabilir. Bu yetenek ana
|
||
sunucuya herhangi bir kod eklemeksizin günlükleme esnekliğini şaşırtıcı
|
||
derecede arttırır. Günlükler boruya yazılmak istenirse dosya ismini boru
|
||
karakteriyle ("<code>|</code>") değiştirip ardına günlük girdilerini
|
||
standart girdisinden kabul edecek programın ismini eklemek yeterlidir.
|
||
Apache httpd başlatıldığı zaman borulu günlük işlemini de
|
||
başlatacaktır. Eğer sunucu çalışırken günlükleri kabul eden süreç
|
||
çökerse Apache httpd bu programı yeniden başlatır. (Bu son özelliği
|
||
sebebiyle bu tekniğe “güvenilir borulu günlükleme” adını veriyoruz.)</p>
|
||
|
||
<p>Borulu günlük süreçleri ana Apache httpd süreci tarafından başlatılır
|
||
ve bu süreçler ana Apache httpd sürecinin kullanıcı kimliğini miras
|
||
alırlar. Yani borulu günlükleme programları aslında root tarafından
|
||
çalıştırılmış gibi olur. Bu bakımdan, bu programları basit ve güvenilir
|
||
kılmak çok önemlidir.</p>
|
||
|
||
<p>Borulu günlüklerin önemli kullanım alanlarından biri de sunucuyu
|
||
yeniden başlatmak gerekmeksizin günlük çevrimini mümkün kılmaktır.
|
||
Apache HTTP sunucusu bu amaçla kullanılmak üzere
|
||
<code class="program"><a href="./programs/rotatelogs.html">rotatelogs</a></code> diye bir program içerir. Örneğin,
|
||
günlükleri 24 saatte bir döndürmek isterseniz bunu şöyle
|
||
yapabilirsiniz:</p>
|
||
|
||
<pre class="prettyprint lang-config">CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/access_log 86400" common</pre>
|
||
|
||
|
||
<p>Borunun diğer ucundaki süreci başlatacak komutun tırnak içine
|
||
alındığına dikkat ediniz. Bu örnekler erişim günlüğü için verilmişse de
|
||
aynı teknik hata günlüğü için de kullanılabilir.</p>
|
||
|
||
<p>Hariçten bir uygulama olarak <a href="http://www.cronolog.org/">cronolog</a> isminde buna benzer ancak
|
||
çok daha esnek bir program daha vardır.</p>
|
||
|
||
<p>Borulu günlükler de şarta bağlı günlükleme kadar güçlü olmakla beraber
|
||
çevrimdışı ardıl işlemler gibi daha basit çözümler için
|
||
kullanılmamalıdır.</p>
|
||
|
||
<p>Öntanımlı olarak borulu günlük süreci bir kabuk kullanmadan
|
||
çalıştırılır. Kabuk kullanarak (genelde <code>/bin/sh -c</code> ile)
|
||
yapılmak istenirse "<code>|</code>" yerine "<code>|$</code>"
|
||
kullanılır:</p>
|
||
|
||
<pre class="prettyprint lang-config"># Kabuk kullanarak "rotatelogs" çalıştırmak
|
||
CustomLog "|$/usr/local/apache/bin/rotatelogs /var/log/access_log 86400" common</pre>
|
||
|
||
|
||
<p>Bu, Apache 2.2 için öntanımlı davranıştı. Kabuk özelliklerine bağlı
|
||
olarak, yeniden başlatma sırasındaki sinyal işleme sorunları ve günlük
|
||
borulama uygulamasının yaşam süresi için ek bir kabuk süreci ile
|
||
sonuçlanabilir. Apache 2.2 ile uyumluluk açısından "<code>||</code>"
|
||
gösterimi de desteklenmekte olup "<code>|</code>" kullanımına
|
||
eşdeğerdir.</p>
|
||
|
||
<div class="note"><h3>Windows'ta yığın alanı</h3>
|
||
<p>Windows'ta çok sayıda borulu günlükleme süreci çalışırken ve özellikle
|
||
HTTPD bir hizmet olarak çalışıyorsa sorunlar baş gösterebilir. Bunun
|
||
başlıca sebebi masaüstü yığın alanının (heap) dışına taşılmasıdır. Her
|
||
hizmete ayrılan masüstü yığın alanı, kayıt defterindeki
|
||
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\SubSystems\Windows
|
||
kaydındaki üçüncü değiştirge olan <code>SharedSection</code>
|
||
değeridir. <strong>Bu değeri değiştirirken çok dikkatli olun</strong>;
|
||
bu, Windows kayıt defterini değiştirirken verilen normal
|
||
uyarılardandır, fakat eğer bu değer çok yüksek olursa masaüstü yığın
|
||
alanının tükenebileceği dikkate alınmalıdır.</p>
|
||
</div>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="virtualhost" id="virtualhost">Sanal Konaklar</a></h2>
|
||
|
||
|
||
<p>Bir sunucu çok sayıda <a href="vhosts/">sanal konak</a> ile hizmet
|
||
sunarken bunların günlük kayıtları için çeşitli seçenekler mevcuttur.
|
||
İlk seçenekte, sanki sunucu tek bir konakla hizmet sunuyormuş gibi
|
||
günlük kaydı yapılır. Günlükleme yönergelerini <code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code> bölümlerinin dışına, ana sunucu
|
||
bağlamına yerleştirerek tüm isteklerin aynı erişim ve hata günlüğüne
|
||
yazılmasını sağlamak olasıdır. Bu teknik, tek tek sanal konaklar için
|
||
kolayca istatistik toplamaya izin vermez.</p>
|
||
|
||
<p>Eğer <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code>
|
||
veya <code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code> yönergesi bir
|
||
<code class="directive"><a href="./mod/core.html#virtualhost"><VirtualHost></a></code> bölümüne
|
||
yerleştirilirse bu sanal konağa bütün erişimler veya hatalar belirtilen
|
||
dosyaya günlüklenecektir. Böyle günlükleme yönergeleri içermeyen sanal
|
||
konakların günlükleri hala ana sunucunun hata ve erişim günlüklerine
|
||
yazılmaya devam edecektir. Bu teknik az sayıda sanal konak barındıran
|
||
sunucular için çok kullanışlıdır. Fakat sanal konak sayısı çok fazlaysa
|
||
bu teknikle günlük dosyalarını yönetmek çok karmaşık bir hal alabilir.
|
||
Ayrıca, <a href="vhosts/fd-limits.html">yetersiz dosya tanıtıcısı</a>
|
||
sorunlarıyla çok sık karşılaşılabilir.</p>
|
||
|
||
<p>Erişim günlükleri için çok az bir fedakarlıkla çok iyi bir çözüm vardır.
|
||
Günlük biçemine sanal konaklarla ilgili bilgi eklemek suretiyle tüm
|
||
konakların aynı günlük dosyasını kullanmaları olasıdır. Böylece günlük
|
||
dosyası sonradan her sanal konak için ayrı bir dosya oluşturmak üzere
|
||
ayrıştırılabilir. Örneğin, bu işlem için şu yönergeler kullanılıyor
|
||
olsun:</p>
|
||
|
||
<pre class="prettyprint lang-config">LogFormat "%v %l %u %t \"%r\" %>s %b" ortaksankon
|
||
CustomLog logs/access_log ortaksankon</pre>
|
||
|
||
|
||
<p><code>%v</code> belirteci isteği sunan sanal konağın ismini günlüğe
|
||
yazmak için kullanılır. Daha sonra <a href="programs/split-logfile.html">split-logfile</a> gibi bir program
|
||
kullanarak, bu dosyadan her sanal konak için ayrı birer dosya elde
|
||
edilebilir.</p>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="other" id="other">Diğer Günlük Dosyaları</a></h2>
|
||
|
||
|
||
<table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_logio.html">mod_logio</a></code></li><li><code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code></li><li><code class="module"><a href="./mod/mod_log_forensic.html">mod_log_forensic</a></code></li><li><code class="module"><a href="./mod/mod_cgi.html">mod_cgi</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code></li><li><code class="directive"><a href="./mod/mod_log_config.html#bufferedlogs">BufferedLogs</a></code></li><li><code class="directive"><a href="./mod/mod_log_forensic.html#forensiclog">ForensicLog</a></code></li><li><code class="directive"><a href="./mod/mpm_common.html#pidfile">PidFile</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptlog">ScriptLog</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptlogbuffer">ScriptLogBuffer</a></code></li><li><code class="directive"><a href="./mod/mod_cgi.html#scriptloglength">ScriptLogLength</a></code></li></ul></td></tr></table>
|
||
|
||
<h3>Gönderilen ve alınan bayt sayısının günlüklenmesi</h3>
|
||
|
||
|
||
<p><code class="module"><a href="./mod/mod_logio.html">mod_logio</a></code> modülü <code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code> yönergesinde kullanılan
|
||
biçem belirteçlerine alınan ve gönderilen bayt sayıları için iki
|
||
belirteç (%I ve %O) ekler.</p>
|
||
|
||
|
||
<h3>Adli Günlük</h3>
|
||
|
||
|
||
<p><code class="module"><a href="./mod/mod_log_forensic.html">mod_log_forensic</a></code> modülü istemci isteklerinin kanıt
|
||
olarak kullanılmak amacıyla günlüklenmesini sağlar. Günlükleme her
|
||
istek için isteğe hizmet sunmadan önce ve sonra olmak üzere iki defa
|
||
yapılır. Böylece günlük dosyasında başarılı her istek için iki satır
|
||
bulunur. Adli günlükleme çok sıkı kurallara tabi olup
|
||
kişiselleştirilemez. Güvenlik ve hata ayıklama aracı olarak yararlı
|
||
değildir.</p>
|
||
|
||
|
||
<h3><a name="pidfile" id="pidfile">PID Dosyası</a></h3>
|
||
|
||
|
||
<p>Apache httpd başlatıldığında, ana httpd sürecinin kimliği (PID)
|
||
<code>logs/httpd.pid</code> dosyasına kaydedilir. Bu dosyanın ismi
|
||
<code class="directive"><a href="./mod/mpm_common.html#pidfile">PidFile</a></code> yönergesi ile
|
||
değiştirilebilir. Bu süreç kimliği sistem yöneticisi tarafından ana
|
||
sürece sinyal göndererek artalan sürecini sonlandırmak veya yeniden
|
||
başlatmak için kullanılır. Windows üzerinde bu işlem için
|
||
<code>-k</code> komut satırı seçeneği kullanılır. Bu konuda daha
|
||
ayrıntılı bilgi edinmek için <a href="stopping.html">Durdurma ve
|
||
Yeniden Başlatma</a> belgesine bakınız.</p>
|
||
|
||
|
||
<h3><a name="scriptlog" id="scriptlog">Betik Günlüğü</a></h3>
|
||
|
||
|
||
<p><code class="directive"><a href="./mod/mod_cgi.html#scriptlog">ScriptLog</a></code> yönergesi CGI
|
||
betiklerinin girdi ve çıktılarını kaydetmenizi mümkün kılmak suretiyle
|
||
hata ayıklamaya yardımcı olur. Bu sadece deneysel amaçla kullanılmalı,
|
||
asıl sunucuya uygulanmamalıdır. <a href="mod/mod_cgi.html">mod_cgi</a>
|
||
belgesinde daha fazla bilgi bulunabilir.</p>
|
||
|
||
</div></div>
|
||
<div class="bottomlang">
|
||
<p><span>Mevcut Diller: </span><a href="./en/logs.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
||
<a href="./fr/logs.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
|
||
<a href="./ja/logs.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
|
||
<a href="./ko/logs.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
|
||
<a href="./tr/logs.html" title="Türkçe"> tr </a></p>
|
||
</div><div class="top"><a href="#page-header"><img src="./images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Yorumlar</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our <a href="https://httpd.apache.org/lists.html">mailing lists</a>.</div>
|
||
<script type="text/javascript"><!--//--><![CDATA[//><!--
|
||
var comments_shortname = 'httpd';
|
||
var comments_identifier = 'http://httpd.apache.org/docs/2.4/logs.html';
|
||
(function(w, d) {
|
||
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
|
||
d.write('<div id="comments_thread"><\/div>');
|
||
var s = d.createElement('script');
|
||
s.type = 'text/javascript';
|
||
s.async = true;
|
||
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
|
||
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
|
||
}
|
||
else {
|
||
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
|
||
}
|
||
})(window, document);
|
||
//--><!]]></script></div><div id="footer">
|
||
<p class="apache">Copyright 2024 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> altında lisanslıdır.</p>
|
||
<p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="./glossary.html">Terimler</a> | <a href="./sitemap.html">Site Haritası</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
|
||
if (typeof(prettyPrint) !== 'undefined') {
|
||
prettyPrint();
|
||
}
|
||
//--><!]]></script>
|
||
</body></html> |