diff options
Diffstat (limited to 'rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8')
-rw-r--r-- | rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 | 406 |
1 files changed, 0 insertions, 406 deletions
diff --git a/rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 b/rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 deleted file mode 100644 index ff3f9990..00000000 --- a/rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 +++ /dev/null @@ -1,406 +0,0 @@ -<?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><!-- - XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX - This file is generated from xml source: DO NOT EDIT - XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX - --> -<title>Devingen olarak Yapılandırılan Kitlesel Sanal Barındırma - Apache HTTP Sunucusu</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 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="../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.0</p> -<img alt="" src="../images/feather.gif" /></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.0</a> > <a href="./">Sanal Konaklar</a></div><div id="page-content"><div id="preamble"><h1>Devingen olarak Yapılandırılan Kitlesel Sanal Barındırma</h1> -<div class="toplang"> -<p><span>Mevcut Diller: </span><a href="../en/vhosts/mass.html" hreflang="en" rel="alternate" title="English"> en </a> | -<a href="../ko/vhosts/mass.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | -<a href="../tr/vhosts/mass.html" title="Türkçe"> tr </a></p> -</div> - - - <p>Bu belgede sanal konakların sonu belirsiz bir şekilde artışı karşısında - Apache httpd sunucusunun nasıl daha verimli kullanılacağı açıklanmıştır. - </p> - -</div> -<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#motivation">Amaç</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#overview">Genel Bakış</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#simple">Basit Devingen Sanal Konaklar</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#homepages">Sanal Kişisel Sayfalar Sistemi</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#combinations">Aynı Sunucuda Kişisel ve Kurumsal Sanal Konaklar</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#ipbased">IP’ye dayalı sanal konakları daha verimli kılmak</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#simple.rewrite"><code>mod_rewrite</code> ile Kurumsal Müşteriler Sistemi</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#homepages.rewrite"><code>mod_rewrite</code> ile Kişisel Sayfalar Sistemi</a></li> -<li><img alt="" src="../images/down.gif" /> <a href="#xtra-conf">Sanal konaklar için ayrı bir yapılandırma dosyası kullanmak</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="motivation" id="motivation">Amaç</a></h2> - - <p>Burada açıklanan teknikler, <code>httpd.conf</code> dosyanızın - örnekteki gibi, aslında hemen hemen birbirinin aynı çok sayıda - <code><VirtualHost></code> bölümü içereceği zaman yapılacaklar ile - ilgilidir.</p> - -<div class="example"><p><code> -NameVirtualHost 111.22.33.44<br /> -<VirtualHost 111.22.33.44><br /> -<span class="indent"> - ServerName musteri-1.dom<br /> - DocumentRoot /siteler/musteri-1.dom/belgeler<br /> - ScriptAlias /cgi-bin/ /siteler/musteri-1.dom/cgi-bin<br /> -</span> -</VirtualHost><br /> -<VirtualHost 111.22.33.44><br /> -<span class="indent"> - ServerName musteri-2.dom<br /> - DocumentRoot /siteler/musteri-2.dom/belgeler<br /> - ScriptAlias /cgi-bin/ /siteler/musteri-2.dom/cgi-bin<br /> -</span> -</VirtualHost><br /> -# blah blah blah<br /> -<VirtualHost 111.22.33.44><br /> -<span class="indent"> - ServerName musteri-N.dom<br /> - DocumentRoot /siteler/musteri-N.dom/belgeler<br /> - ScriptAlias /cgi-bin/ /siteler/musteri-N.dom/cgi-bin<br /> -</span> -</VirtualHost> -</code></p></div> - - <p>Ana fikir, tüm durağan <code><VirtualHost></code> - yapılandırmalarını devingen olarak çalışan tek bir - <code><VirtualHost></code> bölümüyle değiştirmektir. Bunun elbette - bazı getirileri olacaktır:</p> - - <ol> - <li>Yapılandırma dosyanız küçüleceği için Apache daha çabuk - başlatılabilecek ve daha az bellek harcayacaktır.</li> - - <li>Yeni sanal konakların eklenmesi, DNS’de yeni girdiler oluşturmak ve - dosya sisteminde bununla ilgili dizinleri açmak dışında biraz daha - basit olacaktır; en azından Apache’yi yeniden yapılandırmak ve yeniden - başlatmak zorunda kalmayacaksınız.</li> - </ol> - - <p>Ana götürüsü ise her sanal konak için ayrı birer günlük dosyasına sahip - olamayacak olmanızdır. Öte yandan, dosya tanıtıcılarının sınırlı olması - nedeniyle bunu yapmayı zaten istemezsiniz. Günlük kayıtları için bir - fifo veya bir boru hattı oluşturmak ve diğer uçta çalışan bir süreç - vasıtasıyla günlükleri müşterilere paylaştırmak daha iyidir (ayrıca, bu, - istatistikleri toplamanızı da kolaylaştırı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="overview" id="overview">Genel Bakış</a></h2> - - <p>Bir sanal konak iki bilgiye bakarak belirlenir: IP adresi ve HTTP - isteğindeki <code>Host:</code> başlığının içeriği. Devingen sanal - barındırma tekniği, isteği yerine getirmek için kullanılacak dosya - yoluna bu bilgiyi kendiliğinden girmek esasına dayanır. Bu, Apache 2.0 - ile <code class="module"><a href="../mod/mod_vhost_alias.html">mod_vhost_alias</a></code> kullanarak oldukça kolay - yapılabileceği gibi <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> da kullanılabilir. Bu - modüllerin her ikisi de öntanımlı olarak devre dışıdır. Bu tekniği - kullanmak isterseniz Apache’yi yeniden yapılandırıp derleyerek bu iki - modülü etkin duruma getirmeniz gerekir.</p> - - <p>Devingen sanal konağı normal bir sanal konak gibi göstermek için bazı - şeyleri ’göstermelik’ olarak yapmak gerekir. Bunlardan en önemlisi, - Apache tarafından göreli URL’lerden normal URL’leri ve benzerlerini - üretmek için kullanılan sunucu ismidir. Sunucu ismi - <code>ServerName</code> yönergesi ile yapılandırılır ve CGI’ler - tarafından <code>SERVER_NAME</code> ortam değişkeni üzerinden - kullanılır. Çalışma anındaki asıl değer <code class="directive"><a href="../mod/core.html#usecanonicalname">UseCanonicalName</a></code> yönergesi tarafından denetlenir. - <code>UseCanonicalName Off</code> olduğunda sunucu ismi isteğin - <code>Host:</code> başlık alanından elde edilir. <code>UseCanonicalName - DNS</code> belirtilmişse, sunucu ismi, sanal konağın IP adresinden - tersine DNS sorgusu yapılarak elde edilir. Birincisi isme dayalı sanal - konaklar tarafından ikincisi ise IP’ye dayalı sanal konaklar tarafından - kullanılır. Eğer Apache, istekte <code>Host:</code> başlığının olmayışı - veya DNS sorgusunun başarısız olması sebebiyle sunucu ismini elde - edemezse son çare olarak <code>ServerName</code> yönergesinde yazılı - değeri kullanır.</p> - - <p>‘Göstermelik’ yapılan şeylerden biri de <code>DocumentRoot</code> - yönergesi ile yapılandırılan belge kök dizini olup CGI’ler tarafından - <code>DOCUMENT_ROOT</code> ortam değişkeni üzerinden kullanılır. Normal - yapılandırmada <code class="module"><a href="../mod/core.html">core</a></code> modülü tarafından dosya isimlerini - URI’lere eşlerken kullanılır. Fakat sunucu devingen sanal konakları - kullanmak üzere yapılandırıldığında, eşleştirmeyi farklı yollardan yapan - başka bir modül devreye girer (<code>mod_vhost_alias</code> veya - <code>mod_rewrite</code>). <code>DOCUMENT_ROOT</code> ortam değişkenine - değerini atamaktan sorumlu olan bu iki modülden biri kullanılmazsa CGI - veya SSI belgeleri yanlış değerlerle üretilirler.</p> - -</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> -<div class="section"> -<h2><a name="simple" id="simple">Basit Devingen Sanal Konaklar</a></h2> - - <p>Yukarıda <a href="#motivation">Amaç</a> bölümünde özetlenen sanal konak - düzenlemesinin <code>mod_vhost_alias</code> kullanarak daha soysal bir - tarzda gerçekleştirilmiş halini içeren <code>httpd.conf</code> bölümü - aşağıdadır.</p> - -<div class="example"><p><code> -# sunucu ismini Host: başlığından elde edelim<br /> -UseCanonicalName Off<br /> -<br /> -# Bu günlükleme biçiminde ilk alana bakarak<br /> -# sanal konak günlükleri ayrıştırılabilir<br /> -LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br /> -CustomLog logs/access_log vcommon<br /> -<br /> -# istekleri yerine getirmek için kullanılacak<br /> -# dosya isimlerine sunucu ismini ekleyelim<br /> -VirtualDocumentRoot /siteler/%0/belgeler<br /> -VirtualScriptAlias /siteler/%0/cgi-bin -</code></p></div> - - <p>Bu yapılandırmayı IP’ye dayalı sanal konaklar için kullanmak isterseniz - <code>UseCanonicalName Off</code> yerine <code>UseCanonicalName - DNS</code> yazmanız yeterlidir. Böylece dosya ismine eklenecek konak - ismi sanal konağın IP adresinden türetilir.</p> - -</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div> -<div class="section"> -<h2><a name="homepages" id="homepages">Sanal Kişisel Sayfalar Sistemi</a></h2> - - <p>Bu sistem, yukarıdaki yapılandırmanın bir ISS’nin kişisel sayfalar - sunucusuna uyarlanmasından başka bir şey değildir. Biraz daha karmaşık - bir yapılandırma ile dosya isimlerine <code>/home/kullanıcı/</code> - dizinlerini ekleyebiliriz. Farklı olarak her sanal konak için bir tane - değil hepsi için bir tane <code>cgi-bin</code> olacaktır.</p> - -<div class="example"><p><code> -# Son bölüm hariç yukarıdaki yapılandırma, burada...<br /> -<br /> -# sunucu ismine eklenecek dosya isimlerini oluşturalım<br /> -VirtualDocumentRoot /siteler/%2/belgeler<br /> -<br /> -# ortak cgi-bin dizini<br /> -ScriptAlias /cgi-bin/ /siteler/std-cgi/<br /> -</code></p></div> - - <p><code class="module"><a href="../mod/mod_vhost_alias.html">mod_vhost_alias</a></code> belgesinde daha karmaşık - <code>VirtualDocumentRoot</code> örnekleri vardı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="combinations" id="combinations">Aynı Sunucuda Kişisel ve Kurumsal Sanal Konaklar</a></h2> - - <p>Daha karmaşık ayarlamalar yaparak Apache’inin normal - <code><VirtualHost></code> bölümlerini farklı kitlesel sanal konak - yapılandırmaları için kullanabilirsiniz. Örneğin, bireysel - müşterileriniz için bir IP adresiniz, kurumsal müşterileriniz için de - başka bir IP adresiniz olsun. Her biri için ayrı ayrı sanal konaklar - ayarlamak yerine aşağıdaki gibi bir yapılandırma kullanabilirsiniz:</p> - -<div class="example"><p><code> -UseCanonicalName Off<br /> -<br /> -LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon<br /> -<br /> -<Directory /siteler/kurumsal><br /> -<span class="indent"> - Options FollowSymLinks<br /> - AllowOverride All<br /> -</span> -</Directory><br /> -<br /> -<Directory /siteler/bireysel><br /> -<span class="indent"> - Options FollowSymLinks<br /> - AllowOverride None<br /> -</span> -</Directory><br /> -<br /> -<VirtualHost 111.22.33.44><br /> -<span class="indent"> - ServerName kurumsal.iss.dom<br /> - <br /> - CustomLog logs/access_log.kurumsal vcommon<br /> - <br /> - VirtualDocumentRoot /siteler/kurumsal/%0/belgeler<br /> - VirtualScriptAlias /siteler/kurumsal/%0/cgi-bin<br /> -</span> -</VirtualHost><br /> -<br /> -<VirtualHost 111.22.33.45><br /> -<span class="indent"> - ServerName bireysel.iss.dom<br /> - <br /> - CustomLog logs/access_log.bireysel vcommon<br /> - <br /> - VirtualDocumentRoot /siteler/bireysel/%0/belgeler<br /> - ScriptAlias /cgi-bin/ /siteler/std-cgi/<br /> -</span> -</VirtualHost> -</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="ipbased" id="ipbased">IP’ye dayalı sanal konakları daha verimli kılmak</a></h2> - - <p><a href="#simple">İlk örnekte</a> IP’ye dayalı sanal konaklar için - kullanılmak istenirse yapılandırmada neyin nasıl değiştirileceği - belirtilmişti. Her istek için ayrı bir DNS sorgusu gerekeceğinden bu - başarım düşmesine yol açar. DNS sorgusu ihtiyacını ortadan kaldırmak - için, bir çözüm olarak dosya sistemi, konak isimleri yerine IP - adreslerine göre düzenlenebilir. Günlük kayıtları da IP adreslerine göre - ayrıştırılacak şekilde ayarlanabilir.</p> - -<div class="example"><p><code> -# Sunucu ismini IP adresinden ters DNS sorgusu ile elde edelim<br /> -UseCanonicalName DNS<br /> -<br /> -# Günlük kayıtları IP adreslerine göre ayrıştırılabilsin<br /> -LogFormat "%A %h %l %u %t \"%r\" %s %b" vcommon<br /> -CustomLog logs/access_log vcommon<br /> -<br /> -# dosya isimleri IP adreslerini içersin<br /> -VirtualDocumentRootIP /siteler/%0/belgeler<br /> -VirtualScriptAliasIP /siteler/%0/cgi-bin<br /> -</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="simple.rewrite" id="simple.rewrite"><code>mod_rewrite</code> ile Kurumsal Müşteriler Sistemi</a></h2> - - <p>Buradaki <code>httpd.conf</code> bölümü de <a href="#simple">ilk - örnekteki</a> gibi elde edilmiştir. İlk yarı, bazı değişiklikler dışında - yukarıdaki örneğe çok benzer. Bu değişiklikler yapılandırmanın - <code>mod_rewrite</code> bölümünün düzgün çalışması ve geriye doğru - uyumluluk için gereklidir. İkinci yarı, asıl işi yapan - <code>mod_rewrite</code> yapılandırmasını içerir.</p> - - <p>Biraz uzmanlık gerektiren bazı kısımlar var: Öntanımlı olarak - <code>mod_rewrite</code> diğer (<code>mod_alias</code>, vs. gibi) URI - dönüşüm modüllerinden önce çalışır. Dolayısıyla bu modülleri kullanmak - isterseniz, <code>mod_rewrite</code>’ı bunlara izin verecek şekilde - yapılandırmalısınız. Ayrıca her devingen sanal konağa eşdeğer bir - <code>ScriptAlias</code> yapmak için de biraz büyü yapmak gerekir.</p> - -<div class="example"><p><code> -# Sunucu ismini Host: başlığınıdan alalım.<br /> -UseCanonicalName Off<br /> -<br /> -# Günlük dosyasından bilgileri ayıklayabilelim.<br /> -LogFormat "%{Host}i %h %l %u %t \"%r\" %s %b" vcommon<br /> -CustomLog logs/access_log vcommon<br /> -<br /> -<Directory /siteler/hosts><br /> -<span class="indent"> - # ScriptAlias için yaptıklarımızla CGI betiklerini<br /> - # çalışmaya zorlayamayacağımızdan ExecCGI burada gerekli.<br /> - Options FollowSymLinks ExecCGI<br /> -</span> -</Directory><br /> -<br /> -# İşin zor yanına geldik.<br /> -<br /> -RewriteEngine On<br /> -<br /> -# Host: başlığından elde edilen sunucu isminde harf<br /> -# büyüklükleri çeşitli olabilir. Hepsini küçük harf yapalım.<br /> -RewriteMap lowercase int:tolower<br /> -<br /> -## önce normal belgelerle anlaşalım:<br /> -# Alias /icons/ çalışsın - diğer rumuzlar için yineleyelim<br /> -RewriteCond %{REQUEST_URI} !^/icons/<br /> -# CGI’ler de çalışsın.<br /> -RewriteCond %{REQUEST_URI} !^/cgi-bin/<br /> -# Biraz da büyü yapalım.<br /> -RewriteRule ^/(.*)$ /siteler/${lowercase:%{SERVER_NAME}}/belgeler/$1<br /> -<br /> -## Artık CGI’lerle anlaşabiliriz. - Bir MIME türü isteyelim.<br /> -RewriteCond %{REQUEST_URI} ^/cgi-bin/<br /> -RewriteRule ^/(.*)$ /siteler/${lowercase:%{SERVER_NAME}}/cgi-bin/$1 [T=application/x-httpd-cgi]<br /> -<br /> -# Bu kadar! -</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="homepages.rewrite" id="homepages.rewrite"><code>mod_rewrite</code> ile Kişisel Sayfalar Sistemi</a></h2> - - <p>Burada da <a href="#homepages">ikinci örnekte</a> yaptıklarımızı - yapıyoruz.</p> - -<div class="example"><p><code> -RewriteEngine on<br /> -<br /> -RewriteMap lowercase int:tolower<br /> -<br /> -# CGI’ler çalışsın.<br /> -RewriteCond %{REQUEST_URI} !^/cgi-bin/<br /> -<br /> -# konak ismi doğru mu bakalım yoksa RewriteRule çalışmaz.<br /> -RewriteCond ${lowercase:%{SERVER_NAME}} ^www\.[a-z-]+\.isp\.dom$<br /> -<br /> -# URI’nin başına sanal konak ismini ekleyelim.<br /> -# [C], bunu bitirdikten sonra, sonraki rewrite ile devam et demek.<br /> -RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]<br /> -<br /> -# Artık asıl dosya ismini oluşturabiliriz.<br /> -RewriteRule ^www\.([a-z-]+)\.isp\.dom/(.*) /home/$1/$2<br /> -<br /> -# Ortak CGI dizinini tanımlayalım.<br /> -ScriptAlias /cgi-bin/ /siteler/std-cgi/ -</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="xtra-conf" id="xtra-conf">Sanal konaklar için ayrı bir yapılandırma dosyası kullanmak</a></h2> - - <p>Burada, sanal konak isimlerinden belge kök dizini elde ederken - <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> modülünün daha gelişkin özelliklerinden - yararlanarak isimleri ayrı bir dosyadan okutacağız. Bu, esnekliği - artırır ama daha karmaşık bir yapılandırma gerekir.</p> - - <p>Aşağıdaki içeriğe sahip bir <code>vhost.map</code>dosyamız olsun:</p> - -<div class="example"><p><code> -musteri-1.dom /siteler/kurumsal/1<br /> -musteri-2.dom /siteler/kurumsal/2<br /> -# ...<br /> -musteri-N.dom /siteler/kurumsal/N<br /> -</code></p></div> - - <p><code>httpd.conf</code> dosyamız da şunları içerecektir:</p> - -<div class="example"><p><code> -RewriteEngine on<br /> -<br /> -RewriteMap lowercase int:tolower<br /> -<br /> -# Eşlem dosyasını tanımlayalım<br /> -RewriteMap vhost txt:/siteler/conf/vhost.map<br /> -<br /> -# Rumuzları yukarıdaki gibi halledelim.<br /> -RewriteCond %{REQUEST_URI} !^/icons/<br /> -RewriteCond %{REQUEST_URI} !^/cgi-bin/<br /> -RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$<br /> -# Eşlemeyi dosyalar için de yapalım.<br /> -RewriteCond ${vhost:%1} ^(/.*)$<br /> -RewriteRule ^/(.*)$ %1/belgeler/$1<br /> -<br /> -RewriteCond %{REQUEST_URI} ^/cgi-bin/<br /> -RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$<br /> -RewriteCond ${vhost:%1} ^(/.*)$<br /> -RewriteRule ^/(.*)$ %1/cgi-bin/$1 -</code></p></div> - -</div></div> -<div class="bottomlang"> -<p><span>Mevcut Diller: </span><a href="../en/vhosts/mass.html" hreflang="en" rel="alternate" title="English"> en </a> | -<a href="../ko/vhosts/mass.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | -<a href="../tr/vhosts/mass.html" title="Türkçe"> tr </a></p> -</div><div id="footer"> -<p class="apache">Copyright 2009 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="../faq/">SSS</a> | <a href="../glossary.html">Terimler</a> | <a href="../sitemap.html">Site Haritası</a></p></div> -</body></html>
\ No newline at end of file |