]> granicus.if.org Git - apache/blob - docs/manual/logs.html.tr.utf8
update transformations.
[apache] / docs / manual / logs.html.tr.utf8
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head><!--
4         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5               This file is generated from xml source: DO NOT EDIT
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7       -->
8 <title>Günlük Dosyaları - Apache HTTP Sunucusu</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <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" />
12 <script src="./style/scripts/prettify.js" type="text/javascript">
13 </script>
14
15 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
16 <body id="manual-page"><div id="page-header">
17 <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>
18 <p class="apache">Apache HTTP Sunucusu Sürüm 2.4</p>
19 <img alt="" src="./images/feather.gif" /></div>
20 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
21 <div id="path">
22 <a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Sunucusu</a> &gt; <a href="http://httpd.apache.org/docs/">Belgeleme</a> &gt; <a href="./">Sürüm 2.4</a></div><div id="page-content"><div id="preamble"><h1>Günlük Dosyaları</h1>
23 <div class="toplang">
24 <p><span>Mevcut Diller: </span><a href="./en/logs.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
25 <a href="./fr/logs.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
26 <a href="./ja/logs.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
27 <a href="./ko/logs.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
28 <a href="./tr/logs.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
29 </div>
30
31     <p>Bir HTTP sunucusunu verimli şekilde yönetebilmek için oluşabilecek
32       sorunlardan başka sunucunun başarımı ve etkinliği hakkında da bazı geri
33       bildirimler almak gerekir. Apache HTTP Sunucusu çok kapsamlı ve esnek
34       bir günlükleme yeteneğine sahiptir. Bu belgede sunucunun günlükleme
35       yeteneğini nasıl yapılandıracağınızdan ve günlük kayıtlarını nasıl
36       yorumlayacağınızdan bahsedilecektir.</p>
37   </div>
38 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#overview">Giriş</a></li>
39 <li><img alt="" src="./images/down.gif" /> <a href="#security">Güvenlik Uyarısı</a></li>
40 <li><img alt="" src="./images/down.gif" /> <a href="#errorlog">Hata Günlüğü</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#permodule">Modüllere göre günlükleme</a></li>
42 <li><img alt="" src="./images/down.gif" /> <a href="#accesslog">Erişim Günlüğü</a></li>
43 <li><img alt="" src="./images/down.gif" /> <a href="#rotation">Günlük Çevrimi</a></li>
44 <li><img alt="" src="./images/down.gif" /> <a href="#piped">Borulu Günlükler</a></li>
45 <li><img alt="" src="./images/down.gif" /> <a href="#virtualhost">Sanal Konaklar</a></li>
46 <li><img alt="" src="./images/down.gif" /> <a href="#other">Diğer Günlük Dosyaları</a></li>
47 </ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div>
48 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
49 <div class="section">
50 <h2><a name="overview" id="overview">Giriş</a></h2>
51     
52
53   <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>
54
55   <p>Apache HTTP Sunucusu, isteğin ilk alınışından itibaren, URL eşleme
56     işlemleri, bağlantının son çözümlemesi ve bu işlemler sırasına ortaya çıkan
57     hatalar da dahil olmak üzere sunucunuzda meydana gelen herşeyi günlüklemek
58     için çok çeşitli mekanizmalar içerir. Buna ek olarak, günlükleme
59     yetenekleri sağlayan üçüncü parti modüller de kullanılabilir veya mevcut
60     günlük dosyalarına girdiler enjekte edilebilir. Ayrıca, CGI programları,
61     PHP betikleri ve benzerleri sunucu hata günlüğüne kendi iletilerini
62     gönderebilirler.</p>
63
64   <p>Bu belgede Apache HTTP Sunucusunun standart parçası olan günlükleme
65     modülleri hakkında bilgi verilecektir.</p>
66
67   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
68 <div class="section">
69 <h2><a name="security" id="security">Güvenlik Uyarısı</a></h2>
70     
71
72     <p>Apache httpd’nin günlük dosyalarını yazdığı dizine yazabilen birinin sunucuyu
73       başlatan kullanıcı kimliğine (bu genellikle root olur) erişim
74       kazanabileceğine hemen hemen kesin gözüyle bakılabilir. Sonuçlarının
75       neler olacağını kestiremiyorsanız günlüklerin yazıldığı dizinde <em>hiç
76       kimseye</em> yazma erişimi vermeyin; ayrıntılı bilgi için <a href="misc/security_tips.html">güvenlik ipuçları</a> belgesine
77       bakınız.</p>
78
79     <p>Buna ilaveten, günlük dosyaları istemci tarafından sağlanmış bilgiler
80       de içerebilir. Bu nedenle, kötü niyetli istemcilerin günlük dosyalarına
81       denetim karakterleri girmeleri olasılığına karşı ham günlükler ele
82       alınırken dikkatli olunmalıdır.</p>
83   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
84 <div class="section">
85 <h2><a name="errorlog" id="errorlog">Hata Günlüğü</a></h2>
86     
87     <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>
88
89     <p>İsmi ve yeri <code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code> yönergesi
90       ile belirtilen sunucu hata günlüğü, en önemli günlük dosyasıdır. Apache
91       httpd tarafından istekler işlenirken saptanan hatalar ve tanı bilgileri
92       bu dosyaya gönderilir. Sunucuyu başlatırken veya sunucu çalışırken bir
93       sorunla karşılaşıldığında, neyin yanlış gittiğini öğrenmek için
94       bakılacak ilk yer burasıdır. Günlük kaydı çoğunlukla sorunun nasıl
95       düzeltileceği ile ilgili ayrıntıları da içerir.</p>
96
97     <p>Hata günlüğü normal olarak bir dosyaya yazılır (genellikle, dosyanın
98       ismi Unix sistemlerinde <code>error_log</code>, OS/2 ve Windows’ta ise
99       <code>error.log</code>’dur). Ayrıca, Unix sistemlerinde sunucunun
100       hataları <code>syslog</code>’a veya <a href="#piped">borulamak suretiyle
101       bir programa</a> aktarması da mümkündür.</p>
102
103     <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
104       kullanarak günlüklenen değerleri özelleştirebilirsiniz. Bir biçem
105       belirtmezseniz öntanımlı biçem kullanılır. Örnek tipik bir hata iletisi
106       içermektedir:</p>
107
108     <div class="example"><p><code>
109     [Fri Sep 09 10:42:29.902022 2011] [core:error] [pid 35708:tid 4328636416]
110     [client 72.15.99.187] Dosya yok: /usr/local/apache2/htdocs/favicon.ico
111     </code></p></div>
112
113     <p>Günlük girdisinin ilk öğesi iletinin yazıldığı tarih ve saatten oluşur.
114       İkincisi iletiyi üreten modülün ismi (bu durumda: core) ile raporlanan
115       bilginin önem derecesini belirtir. Bunu varsa sürecin kimliği ve yine
116       varsa evre kimliği izler. Sonraki öğe hatanın üretilmesine sebep olan
117       istemcinin IP adresini içerir. Kalanı iletinin kendisidir (duruma
118       bakılırsa bir dosyaya yapılan istek yerine getirilememiş).</p>
119
120     <p>Hata günlüğünde görünebilecek ileti çeşitliliği oldukça fazladır. Çoğu
121       yukarıdaki örneğin benzeridir. Hata günlüğü ayrıca, CGI betiklerinin
122       hata ayıklama çıktılarını da içerir. Bir CGI betiği tarafından standart
123       hataya (<code>stderr</code>) yazılan her türlü bilgi doğrudan hata
124       günlüğüne kopyalanır.</p>
125
126     <p>Hata günlüğüne ve erişim günlüğüne  <code>%L</code> dizgeciği konularak
127       erişim günlüğündeki girdi ile hata günlüğündeki girdiyi ilişkilendirecek
128       bir günlük girdisi kimliği oluşturulabilir.
129       <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
130       onun eşsiz istek kimliği de kullanılır.</p>
131
132     <p>Sunucuyu denerken olası sorunlara karşı hata günlüğünü sürekli
133       izlemelisiniz. Unix sistemlerinde bunu şöyle bir komutla
134       sağlayabilirsiniz:</p>
135
136     <div class="example"><p><code>
137       tail -f error_log
138     </code></p></div>
139   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
140 <div class="section">
141 <h2><a name="permodule" id="permodule">Modüllere göre günlükleme</a></h2>
142     
143
144     <p><code class="directive"><a href="./mod/core.html#loglevel">LogLevel</a></code> yönergesi, günlük
145       iletisinin üretilmesine sebep olan modüle bağlı bir önem seviyesi
146       belirleyebilmenizi sağlar. Bu yolla sorun yaşadığınız modülle ilgili
147       günlük musluklarını sonuna kadar açabiliri ek olarak ilgilendiğiniz diğer
148       modüllerle ilgili ayrıntıları da edinebilirsiniz. Özellikle
149       <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
150       modüllerde yapılmak isteneni denerken neler olup bittiğini ayrıntılarıyla
151       bilmek istediğiniz durumlarda kullanışlıdır.</p>
152
153     <p>Bunu <code class="directive">LogLevel</code> yönergesinde modülün ismini
154       belirterek yapabilirsiniz:</p>
155
156     <pre class="prettyprint lang-config">
157 LogLevel info rewrite:trace5
158     </pre>
159
160
161     <p>Bu satırla ana <code class="directive">LogLevel</code> info'ya ayarlanırken
162       <code class="module"><a href="./mod/mod_rewrite.html">mod_rewrite</a></code> için musluk <code>trace5</code> seviyesine
163       kadar açılmaktadır.</p>
164
165     <div class="note">Bu yönerge, Apache HTTP Sunucusunun evvelki sürümlerinde mevcut olan
166       <code>RewriteLog</code> gibi günlükleme modüllerinin yerini almıştır.
167     </div>
168   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
169 <div class="section">
170 <h2><a name="accesslog" id="accesslog">Erişim Günlüğü</a></h2>
171     
172
173     <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>
174
175     <p>Sunucu erişim günlüğü sunucu tarafından işleme alınan tüm istekleri
176       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.
177       <code class="directive"><a href="./mod/mod_log_config.html#logformat">LogFormat</a></code> yönergesi ile
178       günlük içeriğini kişiselleştirmek mümkündür. Bu bölümde sunucunun
179       bilgileri erişim günlüğüne kaydetmesi için nasıl yapılandırılacağından
180       bahsedilecektir.</p>
181
182     <p>Şüphesiz, bilginin erişim günlüğünde saklanması günlük yönetiminde ilk
183       adımı oluşturur.  Sonraki adım yararlı istatistikleri üretmek için bu
184       bilgiyi incelemektir. Günlük incelemesi bu belgenin kapsamına dahil
185       değildir ve aslında bu işlem sunucunun yaptığı işlerden biri değildir.
186       Bu konu ve günlük incelemesi yapan uygulamalar hakkında daha ayrıntılı
187       bilgi edinmek için <a href="http://dmoz.org/Computers/Software/Internet/Site_Management/Log_analysis/">dmoz.org</a> veya <a href="http://dir.yahoo.com/Computers_and_Internet/Software/Internet/World_Wide_Web/Servers/Log_Analysis_Tools/">Yahoo</a>’ya bakınız.</p>
188
189     <p>Apache httpd’nin çeşitli sürümlerinde erişim günlüklerini denetlemek
190       için kullanılan diğer modüller ve yönergeler arasında mod_log_referer,
191       mod_log_agent modülleri ve <code>TransferLog</code> yönergesi
192       sayılabilir. Artık, daha eski tüm diğer yönergelerin işlevselliklerini
193       bir araya toplayan <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesi kullanılmaktadır.</p>
194
195     <p>Erişim günlüğünün girdi biçemi kolayca isteğe göre
196       düzenlenebilmektedir. Biçemi belirtmekte kullanılan biçem dizgesi, C
197       tarzı printf(1) biçem dizgesini andırır. Sonraki bölümlerde bazı
198       örneklere yer verilmiştir. Biçem dizgesini oluşturan belirteçlerin tam
199       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
200       Kişiselleştirilmesi</a> bölümüne bakınız.</p>
201
202     <h3><a name="common" id="common">Ortak Günlük Biçemi (OGB)</a></h3>
203       
204
205       <p>Erişim günlüğü için sıklıkla kullanılan bir yapılandırma:</p>
206
207       <pre class="prettyprint lang-config">
208 LogFormat "%h %l %u %t \"%r\" %&gt;s %b" common
209 CustomLog logs/access_log common
210       </pre>
211
212
213       <p>İlk satırda belli bir biçem dizgesi için <code>common</code> diye bir
214         <em>takma ad</em> tanımlanmaktadır. Biçem dizgesi, sunucuya hangi
215         belli bir bilgi parçalarını günlükleyeceğini söyleyen % imli biçem
216         belirteçlerinden oluşur. Biçem dizgesine ayrıca dizgesel sabitler de
217         yerleştirilebilir ve bunlar erişim günlüğüne oldukları gibi
218         kopyalanırlar. Biçem dizgesi içinde çift tırnak karakteri (") biçem
219         dizgesini vaktinden önce sonlandırmaması için ters bölü çizgisi ile
220         öncelenmelidir. Biçem dizgesi ayrıca, satır sonlarını belirtmek için
221         "<code>\n</code>" ve sekmeleri belirtmek için "<code>\t</code>"
222         denetim karakterlerini de içerebilir.</p>
223
224       <p><code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesi
225         evvelce tanımlanmış bir <em>takma adı</em> kullanarak yeni bir günlük
226         dosyası tanımlar. Erişim günlüğünün dosya ismi bölü çizgisi ile
227         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>
228
229       <p>Yukarıdaki yapılandırma günlük dosyasına girdileri Ortak Günlük
230         Biçemi (Common Log Format) adı verilen standart biçemde yazar.
231         Bu standart biçem başka HTTP sunucuları tarafından da kullanılır ve
232         çoğu günlük inceleme yazılımı tarafından tanınır. Ortak Günlük
233         Biçeminde üretilen günlük girdileri şöyle görünür:</p>
234
235       <div class="example"><p><code>
236         127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET
237         /apache_pb.gif HTTP/1.0" 200 2326
238       </code></p></div>
239
240       <p>Bu günlük girdisini parça parça açıklayalım:</p>
241
242       <dl>
243         <dt><code>127.0.0.1</code> (<code>%h</code>)</dt>
244
245         <dd>Bu, sunucuya istek yapan istemcinin (uzak konağın) IP adresidir.
246           Eğer <code class="directive"><a href="./mod/core.html#hostnamelookups">HostnameLookups</a></code>
247           yönergesine <code>On</code> değeri atanmışsa sunucu bu IP adresi
248           için DNS sorgusu yapacak ve IP adresi yerine bulduğu konak ismini
249           yazmaya çalışacaktır. Bununla birlikte, bu işlem sunucuyu epeyce
250           yavaşlattığından önerilmemektedir. Konak isimlerini saptamak için en
251           iyisi günlük girdilerini <code class="program"><a href="./programs/logresolve.html">logresolve</a></code> gibi bir
252           günlük işlemcisinden geçirmektir. Burada raporlanan IP adresi
253           doğrudan istemcinin IP adresi olmayabilir. Eğer sunucu ile istemci
254           arasında bir vekil sunucu varsa bu IP adresi, vekil sunucunun IP
255           adresi olacaktır.</dd>
256
257         <dt><code>-</code> (<code>%l</code>)</dt>
258
259         <dd>Çıktıdaki bir "tire" imi istenen bilgi parçasının mevcut olmadığı
260           anlamına gelir. Bu durumda, mevcut olmayan bilgi istemci makine
261           üzerinde <code>identd</code> tarafından belirlenen istemcinin RFC
262           1413 kimliğidir. Bu bilgi oldukça güvenilmezdir ve sıkıca denetlenen
263           iç ağlar haricinde hemen hemen asla kullanılmamalıdır. Apache,
264           <code class="directive"><a href="./mod/mod_ident.html#identitycheck">IdentityCheck</a></code> yönergesine
265           <code>On</code> değeri atanmış olmadıkça bu bilgiyi saptamaya
266           uğraşmaz.</dd>
267
268         <dt><code>frank</code> (<code>%u</code>)</dt>
269
270         <dd>Bu, belge isteğinde bulunan kişinin HTTP kimlik doğrulamasıyla
271           saptanan kullanıcı kimliğidir. Bu değer CGI betiklerine
272           <code>REMOTE_USER</code> ortam değişkeni ile sağlanır. Eğer istek
273           için durum kodu 401 ise (aşağıya bakınız) henüz kullanıcının kimliği
274           doğrulanmamış olacağından bu değere güvenilmemelidir. Eğer belge
275           parola korumalı değilse günlüğün bu kısmı da yukarıdaki gibi
276           "<code>-</code>" olacaktır.</dd>
277
278         <dt><code>[10/Oct/2000:13:55:36 -0700]</code>
279         (<code>%t</code>)</dt>
280
281         <dd>İsteğin alındığı tarih ve saat. Biçemi şöyledir:
282
283           <p class="indent">
284             <code>[gün/ay/yıl:saat:dakika:saniye dilim]<br />
285              gün&nbsp;&nbsp;&nbsp;&nbsp;= 2 hane<br />
286              ay&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;= 3 harf<br />
287              yıl&nbsp;&nbsp;&nbsp;&nbsp;= 4 hane<br />
288              saat&nbsp;&nbsp;&nbsp;= 2 hane<br />
289              dakika = 2 hane<br />
290              saniye = 2 hane<br />
291              dilim&nbsp; = (`+' | `-') 4 hane</code>
292           </p>
293           <p>Günlük biçem dizgesinde zaman gösterim biçemini
294           <code>%{<em>biçem</em>}t</code> şeklinde belirtmek de mümkündür.
295           Buradaki <code><em>biçem</em></code> dizgesi, stardart C
296           kütüphanesindeki <code>strftime(3)</code> işlevi için tanımlanmış
297           biçem belirteçleriyle veya desteklenen özel belirteçlerle
298           oluşturulabilir. Ayrıntılı bilgi için <code class="module"><a href="./mod/mod_log_config.html">mod_log_config</a></code>
299           <a href="mod/mod_log_config.html#formats">biçem dizgelerine</a>
300           bakın.</p>
301         </dd>
302
303         <dt><code>"GET /apache_pb.gif HTTP/1.0"</code>
304         (<code>\"%r\"</code>)</dt>
305
306         <dd>İstemciden alınan istek satırının çift tırnaklar arasında
307           gösterilmesi istenmiştir. İstek satırı en yararlı bilgi parçalarını
308           içerir. Birincisi, istemci tarafından kullanılan yöntem
309           <code>GET</code>’miş. İkinci olarak istemci
310           <code>/apache_pb.gif</code> dosyasını istemiş ve üçüncü olarak
311           istemci <code>HTTP/1.0</code> protokolünü kullanmış. İstek satırının
312           bazı parçalarını bağımsız olarak da günlüklemek mümkündür. Örneğin,
313           "<code>%m %U%q %H</code>" dizgesi, yöntem, yol, sorgu dizgesi ve
314           protokolü kaydedecektir; bu dizge "<code>%r</code>" biçem
315           belirtecinin tek başına yaptığı işi yapar.</dd>
316
317         <dt><code>200</code> (<code>%&gt;s</code>)</dt>
318
319         <dd>Bu, sunucunun istemciye gönderdiği durum kodudur. İsteğin
320           başarıyla yerine getirilip getirilmediğini gösterdiği için bu bilgi
321           çok değerlidir. Durum kodu 2 ile başlıyorsa istek başarıyla yerine
322           getirilmiştir, 3 ile başlıyorsa yönlendirilmiştir, 4 ile başlıyorsa
323           istemci tarafında bir hata oluşmuştur, 5 ile başlıyorsa sunucuda bir
324           hata oluşmuştur. Olası hata kodlarının tam listesi <a href="http://www.w3.org/Protocols/rfc2616/rfc2616.txt">RFC2616 Hiper
325           Metin Aktarım Protokolü</a>nün 10. bölümünde bulunabilir.</dd>
326
327         <dt><code>2326</code> (<code>%b</code>)</dt>
328
329         <dd>Son parça istemciye döndürülen nesnenin yanıt başlığı hariç
330           uzunluğudur. Eğer istemciye bir içerik döndürülmemişse bu değer
331           "<code>-</code>" olacaktır. Bunun yerine günlüğe "<code>0</code>"
332           yazdırmak için <code>%B</code> belirtecini kullanınız.</dd>
333       </dl>
334     
335
336     <h3><a name="combined" id="combined">Birleşik Günlük Biçemi</a></h3>
337       
338
339       <p>Sıklıkla kullanılan diğer bir biçem dizgesi Birleşik Günlük Biçemi
340         (Combined Log Format) olup şöyle kullanılabilir:</p>
341
342       <pre class="prettyprint lang-config">
343 LogFormat "%h %l %u %t \"%r\" %&gt;s %b \"%{Referer}i\" \"%{User-agent}i\"" combined
344 CustomLog log/access_log combined
345       </pre>
346
347
348       <p>Bu biçem ilaveten 2 alan içermesi dışında Ortak Günlük Biçemi ile
349         aynıdır. İlave alanların ikisi de <code>%{<em>başlık</em>}i</code>
350         biçeminde olup buradaki <code><em>başlık</em></code>, HTTP isteğindeki
351         başlık alanlarından biridir. Bu biçemin kullanıldığı bir erişim
352         günlüğü girdisi şöyle olurdu:</p>
353
354       <div class="example"><p><code>
355         127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET
356         /apache_pb.gif HTTP/1.0" 200 2326
357         "http://www.example.com/start.html" "Mozilla/4.08 [en]
358         (Win98; I ;Nav)"
359       </code></p></div>
360
361       <p>Ek alanlar:</p>
362
363       <dl>
364         <dt><code>"http://www.example.com/start.html"</code>
365         (<code>\"%{Referer}i\"</code>)</dt>
366
367         <dd>HTTP istek başlığı "Referer". İstemcinin raporladığı isteğin
368           kaynaklandığı URI. (Bu isteğin yapılmasını sağlayan bağlantıyı
369           içeren URL veya istek bir sayfanın bileşenleri ile ilgiliyse istenen
370           sayfanın URL’si olabilir.)</dd>
371
372         <dt><code>"Mozilla/4.08 [en] (Win98; I ;Nav)"</code>
373         (<code>\"%{User-agent}i\"</code>)</dt>
374
375         <dd>Tarayıcı kimliğini içeren HTTP istek başlığı. Bu istemcinin
376           tarayıcısının raporladığı kendi tanıtım bilgisidir.</dd>
377       </dl>
378     
379
380     <h3><a name="multiple" id="multiple">Çok Sayıda Erişim Günlüğü</a></h3>
381       
382
383       <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
384         sayıda erişim günlüğü kolayca oluşturulabilir. Örneğin aşağıdaki
385         yönergelerle 3 tane erişim günlüğü oluşturulacaktır. İlki temel OGB
386         bilgisini içerirken diğer ikisi isteğin kaynaklandığı yeri ve tarayıcı
387         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
388         <code>AgentLog</code> yönergelerinin etkilerinin nasıl taklit
389         edileceğini de göstermektedir.</p>
390
391       <pre class="prettyprint lang-config">
392 LogFormat "%h %l %u %t \"%r\" %&gt;s %b" common
393 CustomLog logs/access_log common
394 CustomLog logs/referer_log "%{Referer}i -&gt; %U"
395 CustomLog logs/agent_log "%{User-agent}i"
396       </pre>
397
398
399       <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
400         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
401         belirtilebilir.</p>
402     
403
404     <h3><a name="conditional" id="conditional">Şarta Bağlı Günlükler</a></h3>
405       
406
407       <p>Bazı durumlarda istemcinin yaptığı isteğe bağlı olarak erişim
408         günlüğünde belli girdilerin dışlanması gerekebilir. Bu, <a href="env.html">ortam değişkenleri</a> sayesinde kolayca yerine
409         getirilebilir. Önce isteğin belli koşulları sağladığını belirten bir
410         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.
411         Sonra da, ortam değişkenine bağlı olarak isteklerin günlüğe dahil
412         edilip edilmeyeceği <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code> yönergesinin
413         <code>env=</code> deyimi kullanılarak belirtilir. Bazı örnekler:</p>
414
415       <pre class="prettyprint lang-config">
416 # yerel konaktan kaynaklanan istekleri imleyelim
417 SetEnvIf Remote_Addr "127\.0\.0\.1" kaydetme
418 # robots.txt dosyası isteklerini imleyelim
419 SetEnvIf Request_URI "^/robots\.txt$" kaydetme
420 # Kalanları günlüğe kaydedelim
421 CustomLog logs/access_log common env=!kaydetme
422       </pre>
423
424
425       <p>Başka bir örnek olarak, Türkçe belge isteklerini bir dosyaya diğer
426         dillerdeki istekleri başka bir dosyaya kaydedelim.</p>
427
428       <pre class="prettyprint lang-config">
429 SetEnvIf Accept-Language "tr" turkce
430 CustomLog logs/turkce_log common env=turkce
431 CustomLog logs/diger_diller_log common env=!turkce
432       </pre>
433
434
435       <p>Bir arabellekleme senaryosuna arabelleğin verimli kullanılıp
436         kullanılmadığını bilmek isteyelim. Bu basitçe şöyle yapılabilir:</p>
437
438       <pre class="prettyprint lang-config">
439 SetEnv CACHE_MISS 1
440 LogFormat "%h %l %u %t "%r " %&gt;s %b %{CACHE_MISS}e" common-cache
441 CustomLog logs/access_log common-cache
442       </pre>
443
444
445       <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ü
446         çalıştıracak ve başarılı olunduğu takdirde içeriği onsuz teslim
447         edecektir. Bu durumda arabellek kaybı <code>1</code> olarak
448         günlüklenirken arabellek sunumu <code>-</code> olarak
449         günlüklenecektir.</p>
450
451       <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
452         değerlerini günlüklemeyi de destekler:</p>
453
454       <pre class="prettyprint lang-config">
455 LogFormat "%400,501{User-agent}i" browserlog
456 LogFormat "%!200,304,302{Referer}i" refererlog
457       </pre>
458
459
460       <p>Bu örnekte, HTTP durum kodu 400 veya 501 ise <code>User-agent</code>
461         başlığı günlüklenecektir. Aksi takdirde, günlüğe bir "-" yazılacaktır.
462         Benzer şekilde ikinci örnekte, HTTP durum kodu 200, 204 veya 302
463         <strong>değilse</strong> (durum kodlarının öncesindeki "!" imine
464         dikkat) <code>Referer</code> başlığı günlüklenecektir.</p>
465
466       <p>Koşulaa bağlı günlük kaydının çok esnek ve güçlü olabileceğini
467         göstermiş olsak da günlük içeriğini denetlemenin tek yolu bu değildir.
468         Günlük dosyaları sunucu etkinliğini eksiksiz olarak kaydedebildikleri
469         takdirde daha yararlı olurlar. Günlük dosyalarını sonradan işleme tabi
470         tutarak istenmeyen girdileri kaldırılmış bir kopya almak hem kolay hem
471         de daha yararlıdır.</p>
472     
473   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
474 <div class="section">
475 <h2><a name="rotation" id="rotation">Günlük Çevrimi</a></h2>
476     
477
478     <p>Yükü ağır sunucularda günlük dosyalarına kaydedilen bilginin miktarı
479       çok büyük boyutlara ulaşabilir. 10.000 istek içeren bir erişim günlüğü
480       yaklaşık 1MB yer kaplar. Etkin günlük dosyasını belirli aralıklarla
481       değiştirmek veya silmek gerekebilir. Apache httpd çalışırken dosyayı sürekli
482       açık tuttuğu ve yazdığı için bu işlem sunucu çalışırken yapılamaz. Bu
483       bakımdan, günlük dosyası değiştirildikten veya silindikten sonra yeni
484       dosyanın açılması için <a href="stopping.html">sunucunun yeniden
485       başlatılması</a> gerekir.</p>
486
487     <p><a href="stopping.html#graceful">Nazikçe yeniden başlatmak</a>
488       suretiyle sunucunun, mevcut ve bekleyen bağlantıları kaybetmeden yeni
489       günlük dosyalarını açması sağlanabilir. Bununla birlikte, bu işlem
490       sırasında sunucunun eski isteklere sunumu bitirene kadar eski günlük
491       dosyalarına yazmaya devam edebilmesi gerekir. Bu bakımdan, yeniden
492       başlatmanın ardından eski günlük dosyaları üzerinde bir işlem yapmadan
493       önce biraz beklemek gerekir. Günlük dosyalarını döndürürken kullanılan
494       senaryolarda genellikle eski günlük dosyaları yer kazanmak için
495       sıkıştırılırlar:</p>
496
497     <div class="example"><p><code>
498       mv access_log access_log.old<br />
499       mv error_log error_log.old<br />
500       apachectl graceful<br />
501       sleep 600<br />
502       gzip access_log.old error_log.old
503     </code></p></div>
504
505     <p>Günlük çevrimi yapmanın başka bir yolu da sonraki bölümde açıklandığı
506       gibi <a href="#piped">borulu günlükler</a> kullanmaktır.</p>
507   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
508 <div class="section">
509 <h2><a name="piped" id="piped">Borulu Günlükler</a></h2>
510     
511
512     <p>Apache httpd hata ve erişim günlüklerini doğrudan bir dosyaya yazmak
513       yerine bir boru üzerinden başka bir sürece yazabilir. Bu yetenek ana
514       sunucuya herhangi bir kod eklemeksizin günlükleme esnekliğini şaşırtıcı
515       derecede arttırır. Günlükler boruya yazılmak istenirse dosya ismini boru
516       karakteriyle ("<code>|</code>") değiştirip ardına günlük girdilerini
517       standart girdisinden kabul edecek programın ismini eklemek yeterlidir.
518       Apache httpd başlatıldığı zaman borulu günlük işlemini de
519       başlatacaktır. Eğer sunucu çalışırken günlükleri kabul eden süreç
520       çökerse Apache httpd bu programı yeniden başlatır. (Bu son özelliği
521       sebebiyle bu tekniğe “güvenilir borulu günlükleme” adını veriyoruz.)</p>
522
523     <p>Borulu günlük süreçleri ana Apache httpd süreci tarafından başlatılır
524       ve bu süreçler ana Apache httpd sürecinin kullanıcı kimliğini miras
525       alırlar. Yani borulu günlükleme programları aslında root tarafından
526       çalıştırılmış gibi olur. Bu bakımdan, bu programları basit ve güvenilir
527       kılmak çok önemlidir.</p>
528
529     <p>Borulu günlüklerin önemli kullanım alanlarından biri de sunucuyu
530       yeniden başlatmak gerekmeksizin günlük çevrimini mümkün kılmaktır.
531       Apache HTTP sunucusu bu amaçla kullanılmak üzere
532       <code class="program"><a href="./programs/rotatelogs.html">rotatelogs</a></code> diye bir program içerir. Örneğin,
533       günlükleri 24 saatte bir döndürmek isterseniz bunu şöyle
534       yapabilirsiniz:</p>
535
536     <pre class="prettyprint lang-config">
537 CustomLog "|/usr/local/apache/bin/rotatelogs /var/log/access_log 86400" common
538     </pre>
539
540
541     <p>Borunun diğer ucundaki süreci başlatacak komutun tırnak içine
542       alındığına dikkat ediniz. Bu örnekler erişim günlüğü için verilmişse de
543       aynı teknik hata günlüğü için de kullanılabilir.</p>
544
545     <p>Hariçten bir uygulama olarak <a href="http://www.cronolog.org/">cronolog</a> isminde buna benzer ancak
546       çok daha esnek bir program daha vardır.</p>
547
548     <p>Borulu günlükler de şarta bağlı günlükleme kadar güçlü olmakla beraber
549       çevrimdışı ardıl işlemler gibi daha basit çözümler için
550       kullanılmamalıdır.</p>
551
552     <p>Öntanımlı olarak borulu günlük süreci bir kabuk kullanmadan
553       çalıştırılır. Kabuk kullanarak (genelde <code>/bin/sh -c</code> ile)
554       yapılmak istenirse "<code>|</code>" yerine "<code>|$</code>"
555       kullanılır:</p>
556
557     <pre class="prettyprint lang-config">
558 # Kabuk kullanarak "rotatelogs" çalıştırmak
559 CustomLog "|$/usr/local/apache/bin/rotatelogs /var/log/access_log 86400" common
560     </pre>
561
562
563     <p>Bu, Apache 2.2 için öntanımlı davranıştı. Kabuk özelliklerine bağlı
564       olarak, yeniden başlatma sırasındaki sinyal işleme sorunları ve günlük
565       borulama uygulamasının yaşam süresi için ek bir kabuk süreci ile
566       sonuçlanabilir. Apache 2.2 ile uyumluluk açısından "<code>||</code>"
567       gösterimi de desteklenmekte olup "<code>|</code>" kullanımına
568       eşdeğerdir.</p>
569
570   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
571 <div class="section">
572 <h2><a name="virtualhost" id="virtualhost">Sanal Konaklar</a></h2>
573     
574
575     <p>Bir sunucu çok sayıda <a href="vhosts/">sanal konak</a> ile hizmet
576       sunarken bunların günlük kayıtları için çeşitli seçenekler mevcuttur.
577       İlk seçenekte, sanki sunucu tek bir konakla hizmet sunuyormuş gibi
578       günlük kaydı yapılır. Günlükleme yönergelerini <code class="directive"><a href="./mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code> bölümlerinin dışına, ana sunucu
579       bağlamına yerleştirerek tüm isteklerin aynı erişim ve hata günlüğüne
580       yazılmasını sağlamak olasıdır. Bu teknik, tek tek sanal konaklar için
581       kolayca istatistik toplamaya izin vermez.</p>
582
583     <p>Eğer  <code class="directive"><a href="./mod/mod_log_config.html#customlog">CustomLog</a></code>
584       veya <code class="directive"><a href="./mod/core.html#errorlog">ErrorLog</a></code> yönergesi bir
585       <code class="directive"><a href="./mod/core.html#virtualhost">&lt;VirtualHost&gt;</a></code> bölümüne
586       yerleştirilirse bu sanal konağa bütün erişimler veya hatalar belirtilen
587       dosyaya günlüklenecektir. Böyle günlükleme yönergeleri içermeyen sanal
588       konakların günlükleri hala ana sunucunun hata ve erişim günlüklerine
589       yazılmaya devam edecektir. Bu teknik az sayıda sanal konak barındıran
590       sunucular için çok kullanışlıdır. Fakat sanal konak sayısı çok fazlaysa
591       bu teknikle günlük dosyalarını yönetmek çok karmaşık bir hal alabilir.
592       Ayrıca, <a href="vhosts/fd-limits.html">yetersiz dosya tanıtıcısı</a>
593       sorunlarıyla çok sık karşılaşılabilir.</p>
594
595     <p>Erişim günlükleri için çok az bir fedakarlıkla çok iyi bir çözüm vardır.
596       Günlük biçemine sanal konaklarla ilgili bilgi eklemek suretiyle tüm
597       konakların aynı günlük dosyasını kullanmaları olasıdır. Böylece günlük
598       dosyası sonradan her sanal konak için ayrı bir dosya oluşturmak üzere
599       ayrıştırılabilir. Örneğin, bu işlem için şu yönergeler kullanılıyor
600       olsun:</p>
601
602     <pre class="prettyprint lang-config">
603 LogFormat "%v %l %u %t \"%r\" %&gt;s %b" ortaksankon
604 CustomLog logs/access_log ortaksankon
605     </pre>
606
607
608     <p><code>%v</code> belirteci isteği sunan sanal konağın ismini günlüğe
609       yazmak için kullanılır. Daha sonra <a href="programs/other.html">split-logfile</a> gibi bir program
610       kullanarak, bu dosyadan her sanal konak için ayrı birer dosya elde
611       edilebilir.</p>
612   </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
613 <div class="section">
614 <h2><a name="other" id="other">Diğer Günlük Dosyaları</a></h2>
615     
616
617     <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>
618
619     <h3>Gönderilen ve alınan bayt sayısının günlüklenmesi</h3>
620       
621
622       <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
623         biçem belirteçlerine alınan ve gönderilen bayt sayıları için iki
624         belirteç (%I ve %O) ekler.</p>
625     
626
627     <h3>Adli Günlük</h3>
628       
629
630       <p><code class="module"><a href="./mod/mod_log_forensic.html">mod_log_forensic</a></code> modülü istemci isteklerinin kanıt
631         olarak kullanılmak amacıyla günlüklenmesini sağlar. Günlükleme her
632         istek için isteğe hizmet sunmadan önce ve sonra olmak üzere iki defa
633         yapılır. Böylece günlük dosyasında başarılı her istek için iki satır
634         bulunur. Adli günlükleme çok sıkı kurallara tabi olup
635         kişiselleştirilemez. Güvenlik ve hata ayıklama aracı olarak yararlı
636         değildir.</p>
637     
638
639     <h3><a name="pidfile" id="pidfile">PID Dosyası</a></h3>
640       
641
642       <p>Apache httpd başlatıldığında, ana httpd sürecinin kimliği (PID)
643         <code>logs/httpd.pid</code> dosyasına kaydedilir. Bu dosyanın ismi
644         <code class="directive"><a href="./mod/mpm_common.html#pidfile">PidFile</a></code> yönergesi ile
645         değiştirilebilir. Bu süreç kimliği sistem yöneticisi tarafından ana
646         sürece sinyal göndererek artalan sürecini sonlandırmak veya yeniden
647         başlatmak için kullanılır. Windows üzerinde bu işlem için
648         <code>-k</code> komut satırı seçeneği kullanılır. Bu konuda daha
649         ayrıntılı bilgi edinmek için <a href="stopping.html">Durdurma ve
650         Yeniden Başlatma</a> belgesine bakınız.</p>
651     
652
653     <h3><a name="scriptlog" id="scriptlog">Betik Günlüğü</a></h3>
654       
655
656       <p><code class="directive"><a href="./mod/mod_cgi.html#scriptlog">ScriptLog</a></code> yönergesi CGI
657         betiklerinin girdi ve çıktılarını kaydetmenizi mümkün kılmak suretiyle
658         hata ayıklamaya yardımcı olur. Bu sadece deneysel amaçla kullanılmalı,
659         asıl sunucuya uygulanmamalıdır. <a href="mod/mod_cgi.html">mod_cgi</a>
660         belgesinde daha fazla bilgi bulunabilir.</p>
661     
662   </div></div>
663 <div class="bottomlang">
664 <p><span>Mevcut Diller: </span><a href="./en/logs.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
665 <a href="./fr/logs.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
666 <a href="./ja/logs.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
667 <a href="./ko/logs.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
668 <a href="./tr/logs.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
669 </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">Yorum</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again 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 Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
670 <script type="text/javascript"><!--//--><![CDATA[//><!--
671 var comments_shortname = 'httpd';
672 var comments_identifier = 'http://httpd.apache.org/docs/2.4/logs.html';
673 (function(w, d) {
674     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
675         d.write('<div id="comments_thread"><\/div>');
676         var s = d.createElement('script');
677         s.type = 'text/javascript';
678         s.async = true;
679         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
680         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
681     }
682     else { 
683         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
684     }
685 })(window, document);
686 //--><!]]></script></div><div id="footer">
687 <p class="apache">Copyright 2012 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>
688 <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[//><!--
689 if (typeof(prettyPrint) !== 'undefined') {
690     prettyPrint();
691 }
692 //--><!]]></script>
693 </body></html>