summaryrefslogtreecommitdiffstats
path: root/docs/manual/dso.html.tr.utf8
diff options
context:
space:
mode:
Diffstat (limited to 'docs/manual/dso.html.tr.utf8')
-rw-r--r--docs/manual/dso.html.tr.utf8155
1 files changed, 66 insertions, 89 deletions
diff --git a/docs/manual/dso.html.tr.utf8 b/docs/manual/dso.html.tr.utf8
index 1b0b59cbd6..52d108844a 100644
--- a/docs/manual/dso.html.tr.utf8
+++ b/docs/manual/dso.html.tr.utf8
@@ -24,23 +24,20 @@
<a href="./ko/dso.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="./tr/dso.html" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>
-<div class="outofdate">Bu çeviri güncel olmayabilir. Son değişiklikler için İngilizce sürüm geçerlidir.</div>
<p>Apache HTTP Sunucusu modüler bir program olup, yönetici sadece bir
- grup modül seçerek sunucuya işlevsellik ekleyebilir. Modüller sunucunun
- derlenmesi sırasında doğrudan <code class="program"><a href="./programs/httpd.html">httpd</a></code> programının
- içinde derlenebileceği gibi Devingen Paylaşımlı Nesneler (DSO - Dynamic
- Shared Object) halinde <code class="program"><a href="./programs/httpd.html">httpd</a></code> programından ayrı
- olarak da derlenebilir. DSO modülleri sunucunun derlenmesi sırasında
- derlenebileceği gibi ayrı olarak derlenip daha sonra Apache Eklenti
- Aracı (Apache Extension Tool) <code class="program"><a href="./programs/apxs.html">apxs</a></code> programı
- kullanılarak sunucuya eklenebilir.</p>
+ grup modül seçerek sunucuya işlevsellik ekleyebilir. Modüller, Devingen
+ Paylaşımlı Nesneler (DSO - Dynamic Shared Object) halinde
+ <code class="program"><a href="./programs/httpd.html">httpd</a></code> programından ayrı olarak derlenir. DSO modülleri
+ sunucunun derlenmesi sırasında derlenebileceği gibi ayrı olarak derlenip
+ daha sonra Apache Eklenti Aracı (Apache Extension Tool)
+ <code class="program"><a href="./programs/apxs.html">apxs</a></code> programı kullanılarak da sunucuya eklenebilir.</p>
<p>Bu belgede DSO modüllerinin kullanımının yanında teorisine de
değinilecektir.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#implementation">Gerçeklenim</a></li>
-<li><img alt="" src="./images/down.gif" /> <a href="#usage">Kullanıcı Özeti</a></li>
+<li><img alt="" src="./images/down.gif" /> <a href="#usage">Kullanım Özeti</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#background">Artalan Bilgisi</a></li>
<li><img alt="" src="./images/down.gif" /> <a href="#advantages">Getiriler ve Götürüler</a></li>
</ul></div>
@@ -50,93 +47,90 @@
<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>
- <p>Apache modüllerini yüklemek için DSO desteği, Apache çekirdeğine
- durağan olarak ilintilenerek derlenmiş olan <code class="module"><a href="./mod/mod_so.html">mod_so</a></code>
- adında bir modül tarafından sağlanır. <code class="module"><a href="./mod/core.html">core</a></code> modülünden
- başka, bir DSO modülü olamayan tek modül <code class="module"><a href="./mod/mod_so.html">mod_so</a></code>
- modülüdür. Hemen hemen tüm diğer Apache modülleri <a href="install.html">kurulum belgesinde</a> de açıklandığı gibi
- <code class="program"><a href="./programs/configure.html">configure</a></code> betiğinin
- <code>--enable-<em>modül</em>=shared</code> seçeneği her modül için ayrı
- ayrı belirtilerek birer DSO modülü olarak derlenebilir. Derlenmiş
+ <p>Apache httpd modüllerini yüklemek için DSO desteği, Apache httpd
+ çekirdeğine durağan olarak ilintilenerek derlenmiş olan
+ <code class="module"><a href="./mod/mod_so.html">mod_so</a></code> adında bir modül tarafından sağlanır.
+ <code class="module"><a href="./mod/core.html">core</a></code> modülünden başka, bir DSO modülü olamayan tek modül
+ <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
+ diğer Apache modülleri bir DSO modülüne yerleştirilebilir. Derlenmiş
modüller <code>mod_filanca.so</code> biçeminde birer DSO ismi alırlar ve
her biri istenirse <code>httpd.conf</code> dosyasında
<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
veya yeniden başlatılırken sunucuya yüklenebilir.</p>
- <p>Apache modülleri için (özellikle üçüncü parti modüller için) DSO
+ <p><a href="install.html">Kurulum belgesinde</a> açıklandığı gibi, her DSO
+ modülü <code class="program"><a href="./programs/configure.html">configure</a></code> programının
+ <code>--enable-mods-static</code> seçeneği ile devredışı bırakılabilir.</p>
+
+ <p>Apache httpd modülleri için (özellikle üçüncü parti modüller için) DSO
dosyası üretimini kolaylaştırmak amacıyla <code class="program"><a href="./programs/apxs.html">apxs</a></code>
(<dfn>APache eXtenSion</dfn>) adında yeni bir destek programı
- kullanılmaktadır. Bu program Apache modüllerini Apache kaynak ağacından
- ayrı olarak derlemek için kullanılabilir. Fikir basittir: Apache
- derlenirken DSO dosyalarını derlemek için platforma bağımlı
+ kullanılmaktadır. Bu program Apache httpd modüllerini Apache httpd kaynak
+ ağacından ayrı olarak derlemek için kullanılabilir. Fikir basittir: Apache
+ HTTP Sunucusu derlenirken DSO dosyalarını derlemek için platforma bağımlı
derleyici ve ilintileyici seçenekleri <code class="program"><a href="./programs/apxs.html">apxs</a></code>
- programının içine konur ve Apache’nin <code>make install</code> ile
- kurulumu sırasında Apache C başlık dosyaları da kurulur. Böylece
- kullanıcı Apache dağıtımının kaynak ağacına ihtiyaç duymadan ve
+ programının içine konur ve <code>make install</code> ile kurulum sırasında
+ Apache httpd C başlık dosyaları da kurulur. Böylece
+ kullanıcı Apache httpd dağıtımının kaynak ağacına ihtiyaç duymadan ve
platforma bağımlı derleyici ve ilintileyici seçeneklerini bilmek zorunda
- kalmadan istediği Apache modülünü <code class="program"><a href="./programs/apxs.html">apxs</a></code> programını
- kullanarak derleyebilir.</p>
+ kalmadan istediği Apache httpd modülünü <code class="program"><a href="./programs/apxs.html">apxs</a></code>
+ programını kullanarak derleyebilir.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
-<h2><a name="usage" id="usage">Kullanıcı Özeti</a></h2>
+<h2><a name="usage" id="usage">Kullanım Özeti</a></h2>
- <p>Apache 2.x’in DSO özelliklerine bir giriş olarak burada kısaca bir
- bilgi vermekle yetinilecektir:</p>
+ <p>Apache HTTP Sunucusu 2.x’in DSO özelliklerine bir giriş olarak burada
+ kısaca bir bilgi vermekle yetinilecektir:</p>
<ol>
- <li>Kaynak dosyası <code>mod_filanca.c</code> dosyasında dağıtılan bir
- <em>özgün</em> Apache modülünü <code>mod_filanca.so</code> isminde bir
- DSO modülü olarak derlemek ve kurmak için şöyle yapılır:
+ <li><p>Kaynak dosyası <code>mod_filanca.c</code> dosyasında dağıtılan bir
+ <em>özgün</em> Apache htpd modülünü <code>mod_filanca.so</code> isminde
+ bir DSO modülü olarak derlemek ve kurmak için şöyle yapılır:</p>
<div class="example"><p><code>
- $ ./configure --prefix=/kurulum/yeri --enable-filanca=shared<br />
+ $ ./configure --prefix=/kurulum/yeri --enable-filanca<br />
$ make install
</code></p></div>
</li>
- <li>Kaynak dosyası <code>mod_filanca.c</code> dosyasında dağıtılan bir
- <em>üçüncü parti</em> Apache modülünü <code>mod_filanca.so</code>
- isminde bir DSO modülü olarak derlemek ve kurmak için şöyle yapılır:
+ <li><p>Apache HTTP Sunucusunu tüm modüller etkin ve paylaşımlı nesneler
+ yüklü olarak derleyebilir. Daha sonra <code>httpd.conf</code> içindeki
+ <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergelerinden
+ istemediklerinizi açıklama satırları haline getirerek bunları iptal
+ edebilirsiniz.</p>
<div class="example"><p><code>
-$ ./configure --add-module=<var>modül-türü</var>:/bir/kurulum/yeri/mod_filanca.c \<br />
-<span class="indent">
- --enable-filanca=shared<br />
-</span>
+$ ./configure --enable-mods-shared=all<br />
$ make install
</code></p></div>
</li>
- <li>Paylaşımlı modülleri <em>sonradan kurmak için</em> Apache şöyle
- yapılandırılır:
-
-<div class="example"><p><code>
-$ ./configure --enable-so<br />
-$ make install
-</code></p></div>
- </li>
-
- <li>Kaynak dosyası <code>mod_filanca.c</code> dosyasında dağıtılan bir
- <em>üçüncü parti</em> Apache modülü <code>mod_filanca.so</code>
- isminde bir DSO modülü olarak Apache kaynak ağacının dışında
+ <li><p>Kaynak dosyası <code>mod_filanca.c</code> dosyasında dağıtılan bir
+ <em>üçüncü parti</em> Apache httpd modülü <code>mod_filanca.so</code>
+ isminde bir DSO modülü olarak Apache httpd kaynak ağacının dışında
<code class="program"><a href="./programs/apxs.html">apxs</a></code> kullanarak derlemek ve kurmak için şöyle
- yapılır:
+ yapılır:</p>
<div class="example"><p><code>
$ cd /bir/kurulum/yeri<br />
$ apxs -c mod_filanca.c<br />
-$ apxs -i -a -n filanca mod_filanca.la
+$ apxs -aci filanca mod_filanca.la
</code></p></div>
</li>
</ol>
- <p>Tüm durumlarda derlenen paylaşımlı modülü Apache’nin etkin kılabilmesi
- için <code>httpd.conf</code> dosyasında o modül için bir <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergesi bulunmalıdır.</p>
+ <p>Tüm durumlarda derlenen paylaşımlı modülü Apache httpd’nin etkin
+ kılabilmesi için <code>httpd.conf</code> dosyasında o modül için bir
+ <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergesi
+ bulunmalıdır.</p>
+
+ <p>Ayrıntılı bilgi için <a href="programs/apxs.html">apxs belgelerine</a>
+ bakınız.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="background" id="background">Artalan Bilgisi</a></h2>
- <p>Günümüzün Unix türevlerinde var olan şık bir mekanizma sayesinde
+ <p>Günümüzün Unix türevlerinde var olan bir mekanizma sayesinde
çalıştırılabilir bir programın adres uzayına çalışma anında yüklenmek
veya ilintilenmek üzere <em>Devingen Paylaşımlı Nesneler</em> (DSO -
Dynamic Shared Object) adı verilen, özel bir biçem kullanarak kodlanmış
@@ -222,19 +216,7 @@ $ apxs -i -a -n filanca mod_filanca.la
<p>Paylaşımlı kütüphane yaklaşımı bu bakımdan türünün tek örneğidir,
çünkü DSO mekanizması özellikle bunun için tasarlanmıştır, dolayısıyla
işletim sisteminin sağladığı hemen hemen tüm kütüphaneler için
- kullanılabilir. Diğer taraftan, bir programın işlevselliğini
- genişletmek için paylaşımlı nesne kullanımı çoğu program tarafından
- kullanılan bir şey değildir.</p>
-
- <p>1998 itibariyle, DSO nesneleriyle çalışma anında çalıştırılabilir
- program işlevselliğini genişleten başlıca birkaç yazılım paketi vardır:
- Perl 5 (XS mekanizması ve DynaLoader modülü üzerinden), Netscape
- Sunucusu, vd. 1.3 sürümünden itibaren Apache de bu gruba katıldı. Çünkü
- Apache, modül kavramını zaten program işlevselliğini genişletmek için
- kullanıyordu ve temel işlevselliğine dış modülleri ilintilemek için
- dahili olarak dağıtım listesine dayalı bir yaklaşım kullanmaktaydı.
- Dolayısıyla Apache, modüllerini çalışma anında yüklemek için DSO
- kullanmaya baştan yazgılıydı.</p>
+ kullanılabilir.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
<div class="section">
<h2><a name="advantages" id="advantages">Getiriler ve Götürüler</a></h2>
@@ -243,36 +225,31 @@ $ apxs -i -a -n filanca mod_filanca.la
şunlardır:</p>
<ul>
- <li>Sunucu paketi çalışma anında daha esnektir çünkü, asıl sunucuyu
+ <li>Sunucu paketi çalışma anında daha esnektir çünkü, sunucuyu
oluşturan parçalar derleme sırasında <code class="program"><a href="./programs/configure.html">configure</a></code>
seçenekleriyle birleştirilmek yerine <code>httpd.conf</code> içinde
<code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code> yönergeleri
sayesinde çalışma anında birleştirilebilmektedir. Bu yolla, örneğin
tek bir Apache kurulumuyla birbirinden farklı yapılandırmalara sahip
çok sayıda sunucu çalıştırmak mümkündür. (standart veya SSL sürümü;
- basitleştirilmiş veya güçlendirilmiş sürümü [mod_perl, PHP3],
- vs.)</li>
+ basitleştirilmiş veya devingen sürümü [mod_perl, PHP3], vs.)</li>
<li>Sunucu paketi kurulumdan sonra bile üçüncü parti modüllerle kolayca
genişletilebilir. Bu özellikle, bir Apache temel paketinin yanında
- PHP3, mod_perl, mod_fastcgi gibi ek paketler oluşturan paket
+ PHP, mod_perl, mod_security gibi ek paketler oluşturan paket
dağıtıcılarına büyük yarar sağlar.</li>
- <li>Yeni Apache modülleri için daha kolay prototip geliştirilebilir:
- Modül kaynak kodunu DSO/<code class="program"><a href="./programs/apxs.html">apxs</a></code> çifti sayesinde
- Apache kaynak ağacının dışında derleyip modülün yeni bir sürümünü bir
- <code>apxs -i</code> komutunun ardından <code>apachectl
- restart</code> yaparak çalışan bir Apache sunucusunda denemek daha
- kolay hale getirilmiştir.</li>
+ <li>Yeni Apache httpd modülleri için daha kolay prototip
+ geliştirilebilir: Modül kaynak kodunu DSO/<code class="program"><a href="./programs/apxs.html">apxs</a></code> çifti
+ sayesinde Apache httpd kaynak ağacının dışında derleyip modülün yeni
+ bir sürümünü bir <code>apxs -i</code> komutunun ardından
+ <code>apachectl restart</code> yaparak çalışan bir Apache HTTP
+ Sunucusunda denemek daha kolay hale getirilmiştir.</li>
</ul>
<p>DSO kullanımının götürüleri ise şunlardır:</p>
<ul>
- <li>Her platformda hazır olarak desteklenmeme: Tüm işletim sistemleri
- bir programa devingen olarak kod yükleme becerisine sahip
- olmadığından DSO mekanizması her platformda kullanılamaz.</li>
-
<li>İlk yüklemede %20 yavaşlama: Unix yükleyicisi simgeleri çözümlemek
zorunda olduğundan sunucu ilk başlatılırken yaklaşık %20 daha yavaş
faaliyete geçer.</li>
@@ -289,11 +266,11 @@ $ apxs -i -a -n filanca mod_filanca.la
kullanamazsınız (örneğin a.out temelli platformlar bu işlevselliği
ELF temelli platformlar kadar iyi sağlamaz). Başka bir deyişle, DSO
dosyaları olarak derlenmiş modüllerin kullanabileceği simgeler ya
- Apache temel kodunda vardır ya Apache temel kodunun kullandığı C
- kütüphanesinde (<code>libc</code>) ve diğer durağan ve devingen
- kütüphanelerde vardır ya da konumdan bağımsız kodu içeren
+ Apache httpd temel kodunda vardır ya Apache httpd temel kodunun
+ kullandığı C kütüphanesinde (<code>libc</code>) ve diğer durağan ve
+ devingen kütüphanelerde vardır ya da konumdan bağımsız kodu içeren
durağan kütüphane arşivlerinde (<code>libfilanca.a</code>)
- vardır. Diğer modülleri kullanmak için tek şansınız ya Apache
+ vardır. Diğer modülleri kullanmak için tek şansınız ya Apache httpd
çekirdeğinin modüle bir atıf içermesini sağlamak ya da modül kodunu
<code>dlopen()</code> vasıtasıyla yüklemektir.</li>
</ul>