1 <?xml version='1.0' encoding='UTF-8' ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.tr.xsl"?>
4 <!-- English Revision: 804977 -->
5 <!-- =====================================================
6 Translated by: Nilgün Belma Bugüner <nilgun belgeler.org>
7 Reviewed by: Orhan Berent <berent belgeler.org>
8 ========================================================== -->
11 Licensed to the Apache Software Foundation (ASF) under one or more
12 contributor license agreements. See the NOTICE file distributed with
13 this work for additional information regarding copyright ownership.
14 The ASF licenses this file to You under the Apache License, Version 2.0
15 (the "License"); you may not use this file except in compliance with
16 the License. You may obtain a copy of the License at
18 http://www.apache.org/licenses/LICENSE-2.0
20 Unless required by applicable law or agreed to in writing, software
21 distributed under the License is distributed on an "AS IS" BASIS,
22 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23 See the License for the specific language governing permissions and
24 limitations under the License.
27 <manualpage metafile="install.xml.meta">
29 <title>Derleme ve Kurulum</title>
33 <p>Bu belge Apache HTTP Sunucusunun sadece Unix ve Unix benzeri
34 sistemlerde derlenmesini ve kurulmasını kapsar. Windows üzerinde
35 derleme ve kurulum için <a href="platform/windows.html">Apache HTTPd’nin
36 Microsoft Windows ile kullanımı</a> bölümüne bakınız. Diğer platformlar
37 için ise <a href="platform/">platform</a> belgelerine bakınız.</p>
39 <p>Apache HTTPd, derleme ortamını oluşturmak için çoğu Açık Kaynak Kodlu
40 projenin yaptığı gibi <code>libtool</code> ve <code>autoconf</code>
43 <p>Eğer sadece sürüm yükseltiyorsanız (2.2.50’den 2.2.51’e yükseltmek
44 gibi) lütfen doğrudan <a href="#upgrading">Yükseltme</a> bölümüne
49 <seealso><a href="programs/configure.html">Kaynak ağacının yapılandırılması</a></seealso>
50 <seealso><a href="invoking.html">Apache HTTPd’nin başlatılması</a></seealso>
51 <seealso><a href="stopping.html">Durdurma ve yeniden başlatma</a></seealso>
53 <section id="overview"><title>Tez canlılar için genel bir bakış</title>
56 <columnspec><column width=".13"/><column width=".80"/></columnspec>
58 <td><a href="#download">İndirme</a></td>
60 <td><code>$ lynx http://httpd.apache.org/download.cgi</code>
65 <td><a href="#extract">Paketi açma</a></td>
67 <td><code>$ gzip -d httpd-<em>NN</em>.tar.gz<br />
68 $ tar xvf httpd-<em>NN</em>.tar<br />
69 $ cd httpd-<em>NN</em></code></td>
73 <td><a href="#configure">Yapılandırma</a></td>
75 <td><code>$ ./configure --prefix=<em>ÖNEK</em></code>
80 <td><a href="#compile">Derleme</a></td>
82 <td><code>$ make</code> </td>
86 <td><a href="#install">Kurulum</a></td>
88 <td><code>$ make install</code> </td>
92 <td><a href="#customize">Kişiselleştirme</a></td>
94 <td><code>$ vi <em>ÖNEK</em>/conf/httpd.conf</code> </td>
98 <td><a href="#test">Deneme</a></td>
100 <td><code>$ <em>ÖNEK</em>/bin/apachectl -k start</code>
105 <p><em>NN</em> yerine kuracağınız sürümü, <code><em>ÖNEK</em></code>
106 yerine de dosya sisteminde sunucunun altına kurulacağı dizin yolunu
107 yazınız. <code><em>ÖNEK</em></code> belirtilmezse
108 <code>/usr/local/apache2</code> öntanımlıdır.</p>
110 <p>Derleme ve kurulum işleminin her aşaması, Apache HTTPd Sunucusunun
111 derlenmesi ve kurulması için gerekenler başta olmak üzere aşağıda
112 ayrıntılı olarak açıklanmıştır.</p>
115 <section id="requirements"><title>Gereksinimler</title>
117 <p>Apache HTTPd’yi derleyebilmek için şunlar mevcut olmalıdır:</p>
121 <dd>Geçici olarak en azından 50 MB boş disk alanınız olduğundan emin
122 olunuz. Kurulumdan sonra Apache yaklaşık 10 MB disk alanı kaplıyor
123 olacaktır. Asıl disk alanı gereksinimi seçtiğiniz yapılandırma
124 seçenekleri ve üçüncü parti modüllere göre değişiklik
127 <dt>ANSI-C Derleyici ve Derleme Sistemi</dt>
128 <dd>Bir ANSI-C derleyicinin kurulu olduğundan emin olunuz. <a
129 href="http://www.gnu.org/">Free Software Foundation (FSF)</a>
130 tarafından dağıtılan <a
131 href="http://gcc.gnu.org/">GNU C derleyicisini
132 (GCC)</a> kullanmanız önerilir. GCC yoksa en azından satıcınızın
133 derleyicisinin ANSI uyumlu olduğundan emin olunuz. Ayrıca,
134 <code>PATH</code> ortam değişkeninizin içerdiği yollarda
135 <code>make</code> gibi temel derleme araçları da bulunmalıdır.</dd>
137 <dt>Zamanın doğru belirlenmesi</dt>
138 <dd>HTTP protokolünün elemanları sunuldukları tarih ve saate göre ifade
139 edilirler. Bu bakımdan sisteminizdeki zaman ayarlama oluşumunun
140 ayarlarını gözden geçirmenizin tam sırasıdır. Bu amaçla, Ağ Zaman
141 Protokolüne (NTP) göre çalışan <code>ntpdate</code> veya
142 <code>xntpd</code> programları kullanılır. NTP yazılımları ve halka
143 açık zaman sunucuları hakkında daha ayrıntılı bilgi için <a
144 href="http://www.ntp.org">NTP sitesine bakınız</a>.</dd>
146 <dt><a href="http://www.perl.org/">Perl 5</a> [SEÇİMLİK]</dt>
147 <dd>Perl ile yazılmış <program>apxs</program> veya
148 <program>dbmmanage</program> gibi bazı betikleri desteklemek için
149 Perl 5 yorumlayıcısı gerekir (5.003 veya daha yeni sürümleri
150 yeterlidir). Eğer sisteminizde birden fazla Perl yorumlayıcı
151 kuruluysa (örneğin, sistem geneli için Perl 4, kendi kullanımızı için
152 Perl 5 kurulu olabilir), doğru sürümün kullanılacağından emin olmak
153 bunu <program>configure</program> betiğine <code>--with-perl</code>
154 seçeneğini kullanarak belirtmeniz önerilir. Eğer
155 <program>configure</program> betiği sisteminizde Perl 5 yorumlayıcısı
156 bulamazsa bu betikleri kullanamazsınız. Ancak, bu durum Apache
157 HTTPd’nin derlenip kurulmasına engel değildir.</dd>
161 <section id="download"><title>İndirme</title>
163 <p>Apache HTTP Sunucusunu, çeşitli yansıların da listelendiği <a
164 href="http://httpd.apache.org/download.cgi">Apache HTTP Sunucusu
165 indirme sayfasından</a> indirebilirsiniz. Unix benzeri sistemler
166 kullanan Apache HTTPd kullanıcılarının kaynak paketlerinden birini
167 indirip derlemeleri daha iyi olacaktır. Derleme işlemi (aşağıda
168 açıklanmıştır) kolaydır ve sunucunuzu ihtiyaçlarınıza uygun olarak
169 kişiselleştirmenize imkan tanır. Ayrıca, hazır derlenmiş paketler
170 çoğunlukla en son kaynak sürüm kadar güncel değildirler. Eğer böyle bir
171 paket indirmişseniz, kurarken paketin içinde bulunan
172 <code>INSTALL.bindist</code> dosyasındaki talimatlara uyunuz.</p>
174 <p>İndirme işleminin ardından Apache HTTP Sunucusunun eksiksiz ve
175 değişikliğe uğramamış olduğunun doğrulanması önemlidir. Bu indirilen
176 tar paketinin PGP imzasına göre sınanması ile sağlanabilir. Bunun nasıl
178 href="http://httpd.apache.org/download.cgi#verify">indirme
179 sayfasında</a> anlatıldığı gibi <a
180 href="http://httpd.apache.org/dev/verification.html">PGP
181 kullanımının</a> anlatıldığı daha geniş bir örnek de vardır.</p>
185 <section id="extract"><title>Paketi açma</title>
187 <p>Apache HTTPd tar paketinden sıkıştırmayı kaldırdıktan sonra tar
188 arşivinden dosyaları çıkarmak basit bir işlemdir:</p>
191 $ gzip -d httpd-<em>NN</em>.tar.gz<br />
192 $ tar xvf httpd-<em>NN</em>.tar
195 <p>Bu işlem bulunduğunuz dizinin içinde dağıtımın kaynak dosyalarını
196 içeren yeni bir dizin oluşturacaktır. Sunucuyu derleme işlmine
197 başlayabilmek için önce <code>cd</code> ile bu dizine geçmelisiniz.</p>
200 <section id="configure"><title>Kaynak ağacının yapılandırılması</title>
202 <p>Sonraki adım, Apache HTTPd kaynak ağacının platformunuza ve kişisel
203 gereksinimlerinize uygun olarak yapılandırılmasıdır. Bu işlem dağıtımın
204 kök dizininde bulunan <program>configure</program> betiği kullanılarak
205 yapılır. (Apache HTTPd kaynak ağacının resmen dağıtıma girmemiş bir
206 sürümünü indiren geliştiricilerin sistemlerinde <code>autoconf</code> ve
207 <code>libtool</code> kurulu olması ve sonraki adıma geçmek için
208 <code>buildconf</code> çalıştırmaları gerekir. Bu işlem resmi
209 dağıtımlar için gerekli değildir.)</p>
211 <p>Kaynak ağacını tamamen öntanımlı seçenekler kullanılarak derlemek için
212 <code>./configure</code> komutunu vermek yeterlidir. Öntanımlı
213 seçenekleri değiştirmek için <program>configure</program> betiği
214 çeşitli değişkenler ve komut satırı seçenekleri kabul eder.</p>
216 <p>En önemli seçenek, Apache HTTP Sunucusunun kurulacağı yerin
217 belirlenmesini, dolayısıyla Apache’nin bu konumda doğru olarak
218 çalışması için yapılandırılmasını sağlayan <code>--prefix</code>’tir.
219 Kurulacak dosyaların yerleri ile ilgili daha ayrıntılı denetim ek <a
220 href="programs/configure.html#installationdirectories">yapılandırma
221 seçenekleri</a> ile mümkün kılınmıştır.</p>
223 <p>Bu noktada ayrıca, Apache HTTPd’de hangi özelliklerin bulunmasını
224 istediğinizi <a href="mod/">modülleri</a> etkin kılarak veya iptal
225 ederek belirtebilirsiniz. Apache, öntanımlı olarak içerilmiş <a
226 href="mod/module-dict.html#Status">temel</a> modüllerle gelir. Diğer
227 modüller <code>--enable-<var>modül</var></code> seçenekleri
228 kullanılarak etkinleştirilir. Buradaki <code><var>modül</var></code>,
229 önünden <code>mod_</code> dizgesi kaldırılmış ve içindeki altçizgi
230 imleri tire imleri ile değiştirilmiş modül ismidir. Ayrıca,
231 <code>--enable-<var>modül</var>=shared</code> seçeneklerini kullanarak
232 modülleri çalışma anında gerektiğinde yüklemek veya kaldırmak üzere <a
233 href="dso.html">paylaşımlı nesneler (DSO’lar)</a> olarak derlemeniz de
234 mümkündür. Temel modülleri de benzer şekilde
235 <code>--disable-<var>modül</var></code> seçenekleriyle iptal
236 edebilirsiniz. <program>configure</program> betiği mevcut olmayan
237 modüller için sizi uyarmayıp, seçeneği yok saymakla yetineceğinden, bu
238 seçenekleri kullanırken dikkatli olmalısınız.</p>
240 <p>Ek olarak, bazen kullandığınız derleyici, kütüphaneler veya başlık
241 dosyalarının yerleri hakkında <program>configure</program> betiğine
242 ilave bilgiler sağlamanız gerekir. Bu işlem
243 <program>configure</program> betiğine ya ortam değişkenleriyle ya da
244 komut satırı seçenekleriyle bilgi aktarılarak yapılır. Daha fazla bilgi
245 için <program>configure</program> kılavuz sayfasına bakınız.</p>
247 <p>Apache’yi derlerken ne gibi olasılıklara sahip olduğunuz hakkında bir
248 izlenim edinmeniz için aşağıda tipik bir örneğe yer verilmiştir. Bu
249 örnekte, Apache’nin <code>/sw/pkg/apache</code> önekiyle başlayan
250 dizinlere kurulması, belli bir derleyici ve derleyici seçenekleriyle
251 derlenmesi ve <module>mod_rewrite</module> ve
252 <module>mod_speling</module> modüllerinin de DSO mekanizması üzerinden
253 daha sonra yüklenmek üzere derlenmesi istenmektedir:</p>
256 $ CC="pgcc" CFLAGS="-O2" \<br />
257 ./configure --prefix=/sw/pkg/apache \<br />
258 --enable-rewrite=shared \<br />
259 --enable-speling=shared
262 <p><program>configure</program> betiği başlatıldığında sisteminizde
263 mevcut özelliklerin işe yararlığını sınamak ve sonradan sunucuyu
264 derlemek için kullanılacak Makefile dosyalarını oluşturmak için bir kaç
265 dakika çalışacaktır.</p>
267 <p><program>configure</program> seçeneklerinin tamamı ayrıtılı olarak
268 <program>configure</program> kılavuz sayfasında açıklanmıştır.</p>
271 <section id="compile"><title>Derleme</title>
273 <p>Artık, Apache HTTPd paketini şekillendiren çeşitli parçaları derlemek
274 için basitçe aşağıdaki komutu verebilirsiniz:</p>
276 <example>$ make</example>
278 <p>Bu komutu verdikten sonra lütfen sabırlı olunuz. Temel yapılandırmanın
279 derlenmesi bir kaç dakika alsa da modüllerin derlenmesi donanımınıza ve
280 seçtiğiniz modüllerin sayısına bağlı olarak daha uzun süre
284 <section id="install"><title>Kurulum</title>
286 <p>Şimdi sıra <code><em>ÖNEK</em></code> dizini altına kurulmak üzere
287 yapılandırdığınız (yukarı <code>--prefix</code> seçeneğine bakınız)
288 paketi kurmaya geldi. Basitçe şu komutu veriniz:</p>
290 <example># make install</example>
292 <p><code><em>ÖNEK</em></code> dizininde genellikle yazma izinlerinin
293 sınırlı oluşu nedeniyle bu adım genellikle root yetkilerini
296 <p>Eğer sürüm yükseltiyorsanız, kurulum sırasında mevcut yapılandırma
297 dosyalarının ve belgelerin üzerine yazılmayacaktır.</p>
300 <section id="customize"><title>Kişiselleştirme</title>
302 <p>Bu adımda, Apache HTTP Sunucunuzu <code><em>ÖNEK</em>/conf/</code>
303 dizini altındaki <a href="configuring.html">yapılandırma
304 dosyalarını</a> düzenleyerek kişiselleştirebilirsiniz.</p>
306 <example>$ vi <em>ÖNEK</em>/conf/httpd.conf</example>
308 <p>Bu kılavuz ve kullanılabilecek <a
309 href="mod/directives.html">yapılandırma yönergelerinin</a> kılavuzlarını
310 <code><em>ÖNEK</em>/<a href="./">docs/manual/</a></code> altında
311 bulabileceğiniz gibi en son sürümünü daima <a
312 href="http://httpd.apache.org/docs/&httpd.docs;/"
313 >http://httpd.apache.org/docs/&httpd.docs;/</a> adresinde
317 <section id="test"><title>Deneme</title>
319 <p>Artık Apache HTTP Sunucunuzu <a href="invoking.html">başlatmaya</a>
320 hazırsınız. Hemen şu komutu verin:</p>
322 <example>$ <em>ÖNEK</em>/bin/apachectl -k start</example>
324 <p><code>http://localhost/</code> üzerinden ilk belgeniz için bir istek
325 yapmalısınız. Genellikle <directive
326 module="core">DocumentRoot</directive> olarak bilinen
327 <code><em>ÖNEK</em>/htdocs/</code> altındaki sayfayı görürsünüz.
328 Çalışmakta olan sunucuyu <a href="stopping.html">durdurmak</a> için şu
329 komutu verebilirsiniz:</p>
331 <example>$ <em>ÖNEK</em>/bin/apachectl -k stop</example>
333 <section id="upgrading"><title>Yükseltme</title>
335 <p>Sürüm yükseltme işleminin ilk adımı, sitenizi etkileyen değişiklikleri
336 öğrenmek için dağıtım duyurusunu ve kaynak paketindeki
337 <code>CHANGES</code> dosyasını okumaktır. Ana sürümlerden yükseltme
338 yapıyorsanız (1.3’ten 2.0’a veya 2.0’dan 2.2’ye gibi), derleme anı ve
339 çalışma anı yapılandırmalarındaki ana farklılıklar elle ayarlamalar
340 yapmanızı gerektirecektir. Ayrıca, tüm modüllerin de modül API’sindeki
341 değişikliklere uyum sağlaması için yükseltilmesi gerekecektir.</p>
343 <p>Aynı ana sürüm içinde yükseltme yapmak (2.2.55’ten 2.2.57’ye
344 yükseltmek gibi) daha kolaydır. <code>make install</code> işlemi,
345 mevcut yapılandırma ve günlük dosyalarınızın ve belgelerin üzerine
346 yazmayacaktır. Ek olarak, geliştiriciler alt sürüm değişikliklerinde
347 <program>configure</program> seçenekleri, çalışma anı yapılandırması
348 veya modül API’sinde uyumsuz değişiklikler yapmamaya özen
349 göstereceklerdir. Çoğu durumda, aynı <program>configure</program> komut
350 satırını, aynı yapılandırma dosyasını kullanabileceksiniz ve tüm
351 modülleriniz de çalışmaya devam edebilecektir.</p>
353 <p>Aynı ana sürüm içinde yükseltme işlemine, eski kaynak ağacının kök
354 dizininde veya kurulu sunucunuzun <code>build</code> dizininde
355 bulacağınız <code>config.nice</code> dosyasını yeni kaynak ağacının kök
356 dizinine kopyalamak suretiyle başlayabilirsiniz. Bu dosya evvelce
357 kaynak ağacını yapılandırmakta kullandığınız
358 <program>configure</program> komut satırını içerir.
359 <code>config.nice</code> dosyasında yapmak istediğiniz değişiklikler
360 varsa yaptıktan sonra şu komutları veriniz:</p>
363 $ ./config.nice<br />
366 $ <em>ÖNEK</em>/bin/apachectl -k graceful-stop<br />
367 $ <em>ÖNEK</em>/bin/apachectl -k start<br />
370 <note type="warning">Her yeni sürümü hizmete sokmadan önce daima çalışma
371 ortamınızda denemeniz gerekir. Örneğin, yükseltme işlemini
372 sonuçlandırmadan önce eski sürümün çalışmasını durdurmadan yenisini
373 farklı bir <code>--prefix</code> ile kurabilir ve farklı bir port ile
374 (<directive module="mpm_common">Listen</directive> yönergesini
375 ayarlamak suretiyle) çalıştırabilirsiniz.</note>
377 <p>Özgün <program>configure</program> seçeneklerinizi değiştirmek veya
378 yeni seçenekler eklemek isterseniz bunları <code>config.nice</code>
379 betiğine komut satırı argümanları olarak belirtebilirsiniz:</p>
382 $ ./config.nice --prefix=/home/dnm/apache --with-port=90