]> granicus.if.org Git - apache/blob - docs/manual/dso.html.tr.utf8
Update XForms.
[apache] / docs / manual / dso.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 <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
5 <!--
6         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7               This file is generated from xml source: DO NOT EDIT
8         XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9       -->
10 <title>Devingen Paylaşımlı Nesne Desteği - Apache HTTP Sunucusu Sürüm 2.5</title>
11 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
12 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
13 <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" />
14 <script src="./style/scripts/prettify.min.js" type="text/javascript">
15 </script>
16
17 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
18 <body id="manual-page"><div id="page-header">
19 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/quickreference.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>
20 <p class="apache">Apache HTTP Sunucusu Sürüm 2.5</p>
21 <img alt="" src="./images/feather.gif" /></div>
22 <div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="./images/left.gif" /></a></div>
23 <div id="path">
24 <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.5</a></div><div id="page-content"><div id="preamble"><h1>Devingen Paylaşımlı Nesne Desteği</h1>
25 <div class="toplang">
26 <p><span>Mevcut Diller: </span><a href="./en/dso.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
27 <a href="./fr/dso.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
28 <a href="./ja/dso.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
29 <a href="./ko/dso.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
30 <a href="./tr/dso.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
31 </div>
32
33     <p>Apache HTTP Sunucusu modüler bir program olup, yönetici sadece bir
34       grup modül seçerek sunucuya işlevsellik ekleyebilir. Modüller, Devingen
35       Paylaşımlı Nesneler (DSO - Dynamic Shared Object) halinde
36       <code class="program"><a href="./programs/httpd.html">httpd</a></code> programından ayrı olarak derlenir. DSO modülleri
37       sunucunun derlenmesi sırasında derlenebileceği gibi ayrı olarak derlenip
38       daha sonra Apache Eklenti Aracı (Apache Extension Tool)
39       <code class="program"><a href="./programs/apxs.html">apxs</a></code> programı kullanılarak da sunucuya eklenebilir.</p>
40
41     <p>Bu belgede DSO modüllerinin kullanımının yanında teorisine de
42       değinilecektir.</p>
43   </div>
44 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#implementation">Gerçeklenim</a></li>
45 <li><img alt="" src="./images/down.gif" /> <a href="#usage">Kullanım Özeti</a></li>
46 <li><img alt="" src="./images/down.gif" /> <a href="#background">Artalan Bilgisi</a></li>
47 <li><img alt="" src="./images/down.gif" /> <a href="#advantages">Getiriler ve Götürüler</a></li>
48 </ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div>
49 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
50 <div class="section">
51 <h2><a name="implementation" id="implementation">Gerçeklenim</a></h2>
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_so.html">mod_so</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code></li></ul></td></tr></table>
54
55     <p>Apache httpd modüllerini yüklemek için DSO desteği, Apache httpd
56       çekirdeğine durağan olarak ilintilenerek derlenmiş olan
57       <code class="module"><a href="./mod/mod_so.html">mod_so</a></code> adında bir modül tarafından sağlanır.
58       <code class="module"><a href="./mod/core.html">core</a></code> modülünden  başka, bir DSO modülü olamayan tek modül
59       <code class="module"><a href="./mod/mod_so.html">mod_so</a></code> modülüdür. Apache ile dağıtılan hemen hemen tüm
60       diğer Apache modülleri bir DSO modülüne yerleştirilebilir. Derlenmiş
61       modüller <code>mod_filanca.so</code> biçeminde birer DSO ismi alırlar ve
62       her biri istenirse <code>httpd.conf</code> dosyasında
63       <code class="module"><a href="./mod/mod_so.html">mod_so</a></code> modülünün <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergesiyle belirtilerek sunucu başlatılırken
64       veya yeniden başlatılırken sunucuya yüklenebilir.</p>
65
66     <p><a href="install.html">Kurulum belgesinde</a> açıklandığı gibi, her DSO
67       modülü <code class="program"><a href="./programs/configure.html">configure</a></code> programının
68       <code>--enable-mods-static</code> seçeneği ile devredışı bırakılabilir.</p>
69
70     <p>Apache httpd modülleri için (özellikle üçüncü parti modüller için) DSO
71       dosyası üretimini kolaylaştırmak amacıyla <code class="program"><a href="./programs/apxs.html">apxs</a></code>
72       (<dfn>APache eXtenSion</dfn>) adında yeni bir destek programı
73       kullanılmaktadır. Bu program Apache httpd modüllerini Apache httpd kaynak
74       ağacından ayrı olarak derlemek için kullanılabilir. Fikir basittir: Apache
75       HTTP Sunucusu derlenirken DSO dosyalarını derlemek için platforma bağımlı
76       derleyici ve ilintileyici seçenekleri <code class="program"><a href="./programs/apxs.html">apxs</a></code>
77       programının içine konur ve <code>make install</code> ile kurulum sırasında
78       Apache httpd C başlık dosyaları da kurulur. Böylece
79       kullanıcı Apache httpd dağıtımının kaynak ağacına ihtiyaç duymadan ve
80       platforma bağımlı derleyici ve ilintileyici seçeneklerini bilmek zorunda
81       kalmadan istediği Apache httpd modülünü <code class="program"><a href="./programs/apxs.html">apxs</a></code>
82       programını kullanarak derleyebilir.</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="usage" id="usage">Kullanım Özeti</a></h2>
86
87     <p>Apache HTTP Sunucusu 2.x’in DSO özelliklerine bir giriş olarak burada
88       kısaca bir bilgi vermekle yetinilecektir:</p>
89
90     <ol>
91       <li><p>Kaynak dosyası <code>mod_filanca.c</code> dosyasında dağıtılan bir
92         <em>özgün</em> Apache htpd modülünü <code>mod_filanca.so</code> isminde
93         bir  DSO modülü olarak derlemek ve kurmak için şöyle yapılır:</p>
94
95 <div class="example"><p><code>
96   $ ./configure --prefix=/kurulum/yeri --enable-filanca<br />
97   $ make install
98 </code></p></div>
99       </li>
100
101       <li><p>Apache HTTP Sunucusunu tüm modüller etkin olarak
102         derleyebilirsiniz. Fakat sunucunun başlatılması sırasında sadece temel
103         modüller yüklenir.  Daha sonra <code>httpd.conf</code> içindeki
104         <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergelerini etkin
105         veya etkisiz hale getirerek yüklenecek modülleri
106         değiştirebilirsiniz.</p>
107
108 <div class="example"><p><code>
109 $ ./configure --enable-mods-shared=all<br />
110 $ make install
111 </code></p></div>
112       </li>
113
114       <li><p>Bazı modüller sadece geliştiriciler içindir ve bunlar tüm
115         modüllerin derlenmesini (<em>all</em>) seçseniz bile derlenmeyecektir.
116         Geliştirici modülleri dehil tüm modülleri derlemek isterseniz
117         <em>reallyall</em> kullanınız. Ek olarak, derlenmiş modüller için
118         kullanılan <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code>
119         yönergelerinin tamamını <code>--enable-load-all-modules</code> derleme
120         seçeneği ile etkin kılabilirsiniz.</p>
121
122 <div class="example"><p><code>
123 $ ./configure --enable-mods-shared=reallyall --enable-load-all-modules<br />
124 $ make install
125 </code></p></div>
126       </li>
127
128       <li><p>Kaynak dosyası <code>mod_filanca.c</code> dosyasında dağıtılan bir
129         <em>üçüncü parti</em> Apache httpd modülü <code>mod_filanca.so</code>
130         isminde bir DSO modülü olarak Apache httpd kaynak ağacının dışında
131         <code class="program"><a href="./programs/apxs.html">apxs</a></code> kullanarak derlemek ve kurmak için şöyle
132         yapılır:</p>
133
134 <div class="example"><p><code>
135 $ cd /bir/kurulum/yeri<br />
136 $ apxs -c mod_filanca.c<br />
137 $ apxs -aci filanca mod_filanca.la
138 </code></p></div>
139       </li>
140     </ol>
141
142     <p>Tüm durumlarda derlenen paylaşımlı modülü Apache httpd’nin etkin
143       kılabilmesi  için <code>httpd.conf</code> dosyasında o modül için bir
144       <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergesi
145       bulunmalıdır.</p>
146
147     <p>Ayrıntılı bilgi için <a href="programs/apxs.html">apxs belgelerine</a>
148       bakınız.</p>
149 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
150 <div class="section">
151 <h2><a name="background" id="background">Artalan Bilgisi</a></h2>
152
153     <p>Günümüzün Unix türevlerinde var olan bir mekanizma sayesinde
154       çalıştırılabilir bir programın adres uzayına çalışma anında yüklenmek
155       veya ilintilenmek üzere <em>Devingen Paylaşımlı Nesneler</em> (DSO -
156       Dynamic Shared Object) adı verilen, özel bir biçem kullanarak kodlanmış
157       program parçaları oluşturulabilir.</p>
158
159     <p>Bu yükleme normalde iki yolla yapılabilir: Ya çalıştırılabilir
160       programın başlatılması sırasında yüklenen <code>ld.so</code> adlı bir
161       sistem programınının devingen olarak yüklenmesi ile ya da
162       çalıştırılabilir programın içinden Unix yükleyicisine programsal sistem
163       arayüzü sağlayan <code>dlopen()/dlsym()</code> sistem çağrılarının elle
164       yapılması suretiyle.</p>
165
166     <p>İlk yöntemde kullanılan DSO’lara genelde <em>paylaşımlı
167       kütüphaneler</em> veya <em>DSO kütüphaneleri</em> adı verilir ve
168       bunların dosyaları <code>libfilanca.so</code> veya
169       <code>libfilanca.so.1.2</code> biçiminde isimlendirilir. Belli bir
170       sistem dizininde (normalde <code>/usr/lib</code>) bulunurlar ve derleme
171       sırasında ilintileyici komutuna <code>-lfilanca</code> şeklinde
172       belirtilerek çalıştırılabilir programla ilintilenirler. Doğrudan
173       çalıştırılabilir koda eklenen bu kodlar Unix yükleyicisinin programın
174       başlatılması sırasında kütüphaneyi <code>/usr/lib</code> altında
175       <code>libfilanca.so</code> adıyla bulabilmesini sağlar. Kütüphanelerin
176       aranacağı yerler ya <code>-R</code> gibi bir ilintileyici seçeneği ile
177       koda eklenir ya da arama yolları <code>LD_LIBRARY_PATH</code> ortam
178       değişkeni aracılığıyla yapılandırılır. Böylece çalıştırılabilir
179       programda henüz çözümlenmemiş simgeler DSO içinde bulunarak
180       çözümlenebilir.</p>
181
182     <p>Çalıştırılabilir program içindeki simgelere normalde DSO içinden
183       atıfta bulunulmaz (genel kod kütüphanesinin başka programlarca da
184       kullanılması nedeniyle). Bu bakımdan DSO tarafında böyle bir çözümleme
185       yapılmaz. Çalıştırılabilir program da DSO’daki simgeleri kendisi
186       çözümlemeye uğraşmaz, bu işlemlerden tamamen Unix yükleyicisi
187       (<code>ld.so</code>) sorumludur. (Aslında, <code>ld.so</code>’yu
188       çağıracak kod, her çalıştırılabilir programın içine ilintilenmiş
189       (durağan değil) başlatma kodunun bir parçasıdır.) Programlar tarafından
190       ortaklaşa kullanılan kütüphanelerin devingen olarak yüklenmesinin sebebi
191       basittir: Kütüphane kodu <code>libc.so</code> gibi bir sistem
192       kütüphanesine bir kere kaydedilip disk alanından yer kazanılmış
193       olur.</p>
194
195     <p>İkinci yöntemde kullanılan DSO’lara yine <em>paylaşımlı
196       kütüphaneler</em> veya <em>DSO kütüphaneleri</em> adı verilir fakat
197       bunların dosyaları geçerli kabule göre <code>filanca.so</code> gibi
198       isimlendirilse de genelde keyfi olarak seçilen bir dosya uzantısı
199       kullanılarak isimlendirilirler. Bu dosyalar genellikle programa özel bir
200       dizinde dururlar ve bu dosyaları kullanacak olan çalıştırılabilir
201       programla aralarında özdevimli olarak bağ kurulmamıştır. Bunun yerine,
202       çalıştırılabilir program DSO’yu çalışma anında <code>dlopen()</code>
203       sayesinde kendi adres uzayına ekler. Çalıştırılabilir program için
204       DSO’daki simgeler bu sırada çözümlenmez. Özdevimli olarak devreye
205       giren Unix yükleyicisi, (varsa) artakalan simgeleri, çalıştırılabilir
206       ihraç edilen simge kümelerini (ve özellikle her yerde hazır ve nazır
207       <code>libc.so</code> içindeki tüm simgeleri) kullanarak çözümler. Bu
208       yolla DSO, çalıştırılabilir programın simge kümesi bilgilerini sanki
209       kendisine baştan durağan olarak ilintilenmiş gibi ulaşabilir.</p>
210
211     <p>Son olarak, DSO’nun programlama arayüzünün getirilerinden yararlanmak
212       amacıyla çalıştırılabilir program, daha sonra dağıtım tabloları vb.
213       yerlerde kullanmak üzere <code>dlsym()</code> üzerinden DSO’daki belli
214       simgeleri çözümlemek zorundadır. Başka bir deyişle: Çalıştırılabilir
215       program ihtiyaç duyduğu her simgeyi kullanmak için kendisi çözümleme
216       yapmak zorundadır. Böyle bir mekanizmanın getirisi, programın isteğe
217       bağlı parçalarının gerekli olana kadar yüklenmemesidir (böylece daha az
218       bellek alanı kullanılır). Gerektiği zaman programın işlevselliğini
219       arttırmak amacıyla bu parçalar devingen olarak programa
220       yüklenebilir.</p>
221
222     <p>DSO mekanizmasının bu basit gibi görünen işleyişinde zorluk içeren bir
223       adım şudur (başkaları da olabilir): Bir programın işlevselliğini
224       genişletmek için DSO kullanılırken (ikinci yöntem) çalıştırılabilir
225       programdan DSO için simgelerin çözümlenmesi.  Zorluğun sebebi,
226       "tersine çözümleme" yapılmasıdır; çalıştırılabilir programın simge
227       kümesindeki DSO simgeleri kütüphane tasarımına aykırı bir şekilde
228       çözümlenir ve bu uygulama tüm platformlarda hazır olarak
229       desteklenmediği gibi standartlaşmış da değildir. Geçer uygulamada
230       çalıştırılabilir programın evrensel simgeleri çoğunlukla yeniden dışa
231       verilmez ve bu bakımdan bir DSO içinde kullanılmaları uygun değildir.
232       Esas sorun, çalıştırılabilir bir programın işlevselliğini çalışma
233       anında genişletmek için DSO kullanımı sırasında ilintileyicinin tüm
234       evrensel simgeleri dışa vermesini zorlamanın bir yolunu bulmaktır.</p>
235
236     <p>Paylaşımlı kütüphane yaklaşımı bu bakımdan türünün tek örneğidir,
237       çünkü DSO mekanizması özellikle bunun için tasarlanmıştır, dolayısıyla
238       işletim sisteminin sağladığı hemen hemen tüm kütüphaneler için
239       kullanılabilir.</p>
240 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
241 <div class="section">
242 <h2><a name="advantages" id="advantages">Getiriler ve Götürüler</a></h2>
243
244     <p>Yukarıda bahsedilen DSO’ya dayalı özelliklerin getirileri
245       şunlardır:</p>
246
247     <ul>
248       <li>Sunucu paketi çalışma anında daha esnektir çünkü, sunucuyu
249         oluşturan parçalar derleme sırasında <code class="program"><a href="./programs/configure.html">configure</a></code>
250         seçenekleriyle birleştirilmek yerine <code>httpd.conf</code> içinde
251         <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergeleri
252         sayesinde çalışma anında birleştirilebilmektedir. Bu yolla, örneğin
253         tek bir Apache kurulumuyla birbirinden farklı yapılandırmalara sahip
254         çok sayıda sunucu çalıştırmak mümkündür. (standart veya SSL sürümü;
255         basitleştirilmiş veya devingen sürümü [mod_perl, PHP3], vs.)</li>
256
257       <li>Sunucu paketi kurulumdan sonra bile üçüncü parti modüllerle kolayca
258         genişletilebilir. Bu özellikle, bir Apache temel paketinin yanında
259         PHP, mod_perl, mod_security gibi ek paketler oluşturan paket
260         dağıtıcılarına büyük yarar sağlar.</li>
261
262       <li>Yeni Apache httpd modülleri için daha kolay prototip
263         geliştirilebilir: Modül kaynak kodunu DSO/<code class="program"><a href="./programs/apxs.html">apxs</a></code> çifti
264         sayesinde Apache httpd kaynak ağacının dışında derleyip modülün yeni
265         bir sürümünü bir <code>apxs -i</code> komutunun ardından
266         <code>apachectl restart</code> yaparak çalışan bir Apache HTTP
267         Sunucusunda denemek daha kolay hale getirilmiştir.</li>
268     </ul>
269
270     <p>DSO kullanımının götürüleri ise şunlardır:</p>
271
272     <ul>
273       <li>İlk yüklemede %20 yavaşlama: Unix yükleyicisi simgeleri çözümlemek
274         zorunda olduğundan sunucu ilk başlatılırken yaklaşık %20 daha yavaş
275         faaliyete geçer.</li>
276
277       <li>Çalışma sırasında % 5 yavaşlama: Konumdan bağımsız kodun (PIC -
278         Position Independent Code) göreli adresleme için karmaşık oyunlara
279         girmesi ve bunun mutlak adresleme kadar hızlı olmaması nedeniyle
280         sunucu bazı platformlarda çalışma anında yaklaşık %5 daha yavaş
281         çalışabilir.</li>
282
283       <li>DSO'nun tüm modüller için uygun olmaması: DSO modülleri bazı
284         platformlarda diğer DSO temelli kütüphanelerle ilintilenemediğinden
285         (<code>ld -lfilanca</code>) DSO mekanizmasını tüm modül türleri için
286         kullanamazsınız (örneğin a.out temelli platformlar bu işlevselliği
287         ELF temelli platformlar kadar iyi sağlamaz). Başka bir deyişle, DSO
288         dosyaları olarak derlenmiş modüllerin kullanabileceği simgeler ya
289         Apache httpd temel kodunda vardır ya Apache httpd temel kodunun
290         kullandığı C kütüphanesinde (<code>libc</code>) ve diğer durağan ve
291         devingen kütüphanelerde vardır ya da konumdan bağımsız kodu içeren
292         durağan kütüphane arşivlerinde (<code>libfilanca.a</code>)
293         vardır. Diğer modülleri kullanmak için tek şansınız ya Apache httpd
294         çekirdeğinin modüle bir atıf içermesini sağlamak ya da modül kodunu
295         <code>dlopen()</code> vasıtasıyla yüklemektir.</li>
296     </ul>
297
298 </div></div>
299 <div class="bottomlang">
300 <p><span>Mevcut Diller: </span><a href="./en/dso.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
301 <a href="./fr/dso.html" hreflang="fr" rel="alternate" title="Français">&nbsp;fr&nbsp;</a> |
302 <a href="./ja/dso.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
303 <a href="./ko/dso.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
304 <a href="./tr/dso.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
305 </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>
306 <script type="text/javascript"><!--//--><![CDATA[//><!--
307 var comments_shortname = 'httpd';
308 var comments_identifier = 'http://httpd.apache.org/docs/trunk/dso.html';
309 (function(w, d) {
310     if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
311         d.write('<div id="comments_thread"><\/div>');
312         var s = d.createElement('script');
313         s.type = 'text/javascript';
314         s.async = true;
315         s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
316         (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
317     }
318     else {
319         d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
320     }
321 })(window, document);
322 //--><!]]></script></div><div id="footer">
323 <p class="apache">Copyright 2016 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>
324 <p class="menu"><a href="./mod/">Modüller</a> | <a href="./mod/quickreference.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[//><!--
325 if (typeof(prettyPrint) !== 'undefined') {
326     prettyPrint();
327 }
328 //--><!]]></script>
329 </body></html>