Bu belge Apache HTTP Sunucusunun sadece Unix ve Unix benzeri sistemlerde derlenmesini ve kurulmasını kapsar. Windows üzerinde derleme ve kurulum için Apache HTTP Sunucusunun Microsoft Windows ile kullanımı bölümüne bakınız. Diğer platformlar için ise platform belgelerine bakınız.
Apache HTTP Sunucusunun, derleme ortamını oluşturmak için çoğu Açık
Kaynak Kodlu projenin yaptığı gibi libtool
ve
autoconf
kullanır.
Eğer sadece sürüm yükseltiyorsanız (2.2.50’den 2.2.51’e yükseltmek gibi) lütfen doğrudan Yükseltme bölümüne atlayınız.
İndirme | $ lynx http://httpd.apache.org/download.cgi
|
Paketi açma | $ gzip -d httpd-NN.tar.gz |
Yapılandırma | $ ./configure --prefix=ÖNEK
|
Derleme | $ make |
Kurulum | $ make install |
Kişiselleştirme | $ vi ÖNEK/conf/httpd.conf |
Deneme | $ ÖNEK/bin/apachectl -k start
|
NN yerine kuracağınız sürümü, ÖNEK
yerine de dosya sisteminde sunucunun altına kurulacağı dizin yolunu
yazınız. ÖNEK
belirtilmezse
/usr/local/apache2
öntanımlıdır.
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.
Apache httpd’yi derleyebilmek için şunlar mevcut olmalıdır:
./srclib/apr
ve ./srclib/apr-util
dizinlerine
açın (Dizin isimlerinin sürüm numarası içermemesine dikkat edin,
örneğin, APR dağıtımı ./srclib/apr/ altında olsun.) ve
./configure
betiğinin --with-included-apr
seçeneğini kullanın. Bazı platformlarda, httpd'nin, kurulu APR ve
APR-Util kopyanıza karşın derlenmesini sağlamak için ilgili
-dev
paketlerini kurmanız gerekebilir.pcre-config
betiğini bulamazsa
--with-pcre
seçeneğini kullanarak yerini belirtin. Bazı
platformlarda, httpd'nin, kurulu PCRE kopyanıza karşın derlenmesini
sağlamak için ilgili -dev
paketlerini kurmanız
gerekebilir.PATH
ortam değişkeninizin içerdiği yollarda
make
gibi temel derleme araçları da bulunmalıdır.ntpdate
veya
xntpd
programları kullanılır. NTP yazılımları ve halka
açık zaman sunucuları hakkında daha ayrıntılı bilgi için NTP sitesine bakınız.--with-perl
seçeneğini kullanarak belirtmeniz önerilir. Eğer
Apache HTTP Sunucusunu, çeşitli yansıların da listelendiği Apache HTTP Sunucusu
indirme sayfasından 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
INSTALL.bindist
dosyasındaki talimatlara uyunuz.
İ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ğı indirme sayfasında anlatıldığı gibi PGP kullanımının anlatıldığı daha geniş bir örnek de vardır.
Apache HTTP Sunucusu tar paketinden sıkıştırmayı kaldırdıktan sonra tar arşivinden dosyaları çıkarmak basit bir işlemdir:
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 cd
ile bu dizine geçmelisiniz.
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 autoconf
ve
libtool
kurulu olması ve sonraki adıma geçmek için
buildconf
çalıştırmaları gerekir. Bu işlem resmi
dağıtımlar için gerekli değildir.)
Kaynak ağacını tamamen öntanımlı seçenekler kullanılarak derlemek için
./configure
komutunu vermek yeterlidir. Öntanımlı
seçenekleri değiştirmek için
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 --prefix
’tir.
Kurulacak dosyaların yerleri ile ilgili daha ayrıntılı denetim ek yapılandırma
seçenekleri ile mümkün kılınmıştır.
Bu noktada ayrıca, Apache HTTPd’de hangi özelliklerin bulunmasını
istediğinizi modülleri etkin kılarak veya iptal
ederek belirtebilirsiniz. Apache, öntanımlı olarak içerilmiş pek çok
modülle gelir. Bunlar çalışma anında devereye sokulup çıkarılabilen paylaşımlaı nesneler (DSO'lar) olarak derlenebilir.
Ayrıca, istediğiniz modülleri derleme sırasında
--enable-module=static
seçeneğini kullanarak
durağan olarak derleyebilirsiniz. Ek modüller --enable-
modül
seçenekleri kullanılarak etkinleştirilir.
Buradaki modül
, önünden mod_
dizgesi
kaldırılmış ve içindeki altçizgi imleri tire imleri ile değiştirilmiş
modül ismidir. Temel modülleri de benzer şekilde
--disable-modül
seçenekleriyle iptal
edebilirsiniz.
Ek olarak, bazen kullandığınız derleyici, kütüphaneler veya başlık
dosyalarının yerleri hakkında
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 /sw/pkg/apache
önekiyle başlayan
dizinlere kurulması, belli bir derleyici ve derleyici seçenekleriyle
derlenmesi ve
Artık, Apache HTTPd paketini şekillendiren çeşitli parçaları derlemek için basitçe aşağıdaki komutu verebilirsiniz:
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.
Şimdi sıra ÖNEK
dizini altına kurulmak üzere
yapılandırdığınız (yukarı --prefix
seçeneğine bakınız)
paketi kurmaya geldi. Basitçe şu komutu veriniz:
ÖNEK
dizininde genellikle yazma izinlerinin
sınırlı oluşu nedeniyle bu adım genellikle root yetkilerini
gerektirir.
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.
Bu adımda, Apache HTTP Sunucunuzu ÖNEK/conf/
dizini altındaki yapılandırma
dosyalarını düzenleyerek kişiselleştirebilirsiniz.
Bu kılavuz ve kullanılabilecek yapılandırma yönergelerinin kılavuzlarını
ÖNEK/docs/manual/
altında
bulabileceğiniz gibi en son sürümünü daima http://httpd.apache.org/docs/&httpd.docs;/ adresinde
bulabilirsiniz.
Artık Apache HTTP Sunucunuzu başlatmaya hazırsınız. Hemen şu komutu verin:
http://localhost/
üzerinden ilk belgeniz için bir istek
yapmalısınız. Genellikle ÖNEK/htdocs/
altındaki sayfayı görürsünüz.
Çalışmakta olan sunucuyu durdurmak için şu
komutu verebilirsiniz:
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
CHANGES
dosyasını okumaktır. Ana sürümlerden yükseltme
yapıyorsanız (2.0’ten 2.2’ye veya 2.2’daen 2.3’e 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.
Aynı ana sürüm içinde yükseltme yapmak (2.2.55’ten 2.2.57’ye
yükseltmek gibi) daha kolaydır. make install
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
Aynı ana sürüm içinde yükseltme işlemine, eski kaynak ağacının kök
dizininde veya kurulu sunucunuzun build
dizininde
bulacağınız config.nice
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
config.nice
dosyasında yapmak istediğiniz değişiklikler
varsa yaptıktan sonra şu komutları veriniz:
--prefix
ile kurabilir ve farklı bir port ile
(Özgün config.nice
betiğine komut satırı argümanları olarak belirtebilirsiniz:
Üçüncü partilerin çoğunun, Apache HTTP Sunucusunun belli bir platforma kurulumu için paketlenmiş kendi dağıtımları vardır. Çeşitli Linux dağıtımları, üçüncü parti Windows paketleri, Mac OS X, Solaris ve daha pek çokları bunlar arasında sayılabilir.r
Yazılım lisansımız bu çeşit yeniden dağıtımlara izin verdiği gibi bunları cesaretlendirir de. Ancak, sunucunun kurulum ve yapılandırmasının belgelerimizde belittiğimizden farklı olması gibi bir durum ortaya çıkabilir. Ne yazık ki, bu durum yakın zamanda değişecekmiş gibi görünmüyor.
Bu üçüncü parti dağıtımlarla ilgili bir açıklamaya HTTP Sunucu wikisinde yer verilmiş olup bunların şu anki durumunu yansıtmaktadır. Ancak, yine de, dağıtımınızın belli platformlarla ilgili paket yönetimi ve kurulum işlemleri hakkında bilgi sahibi olmanız gerekmektir.