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