Ön Gereksinimler
Önceki Apache Derleme NASIL Sonraki
Ön Gereksinimler
Genel
  • flex 2.54
  • bison 1.28
  • autoconf 2.52
  • automake 1.4
  • libtool 1.4
  • yacc 91.7.30
  • freetype2-devel[25]
  • re2c[26]
diye devam ediyor.
Bütün önemli dağıtımlar bu genel ön gereksinimleri içermelidirler.
OpenSSL
OpenSSL nedir?
OpenSSL projesi güvenliği geliştirmek için çaba harcayan ticari, geniş özellikli ve açık kaynak kodlu, Güvenli Soket Katmanı (SSL v2/v3), İletim Seviyesi güvenliği (TLS v1) protokollerini uygulayan, çok güçlü genel amaçlı bir şifreleme kütüphanesidir. Bu proje bütün dünyada iletişim, plan ve OpenSSL araçlarını geliştirmek için interneti kullanan gönüllüler topluluğu tarafından yönetilir.
OpenSSL Eric A. Young ve Tim J. Hudson tarafından geliştirilen mükemmel SSLeay kütüphanesi temellidir. OpenSSL aracı sizin alıp ticari ve ticari olmayan özel amaçlarınız için kullanmakta özgür olduğunuz Apache-tarzı lisans ile lisanslanmıştır.
Yazarların görüşüne göre, açık kaynak kodlu yazılımlarla güvenli bir Unix sunucu kurmak için temeldir; mod_ssl, OpenSSH ve şifreli veri işlemeyi sağlayan ürünler gibi bütün ürünler buna ihtiyaç duyar.
    -- www.openssl.org
OpenSSL yukarıda bahsedilen ürünlerin ihtiyaç duyduğu kütüphaneleri ve başlık dosyalarını sağlar, hemde istemci ve sunucu sertifikaları için uygulama sağlar.
Kaynak paketini indirin
Derleme ve Kurulum
cd /usr/local
tar -xvzf openssl-0.9.7.tar.gz

cd openssl-0.9.7

./config shared

make
make test
make install

echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
ldconfig
Hızı artırmak için işlemci türünü belirtin
Öntanımlı Makefile i486 işlemcisi için kod üretir. Siz config shared yaptıktan sonra Makefile'ı düzenleyerek bunu değiştirebilirsiniz. -m486'yı bulun ve onu -march=athlon ile değiştirin.
GNU Database System
gdbm nedir?
GNU dbm bir veritabanı kümesidir. Onun çalışması standart UNIX dbm'e benzer.
    -- www.gnu.org/software/gdbm
GNU dbm hemen hemen bütün dağıtımlarda kullanılan çok önemli bir uygulamadır. Dolayısıyla bütün dağıtımlarda kurulu gelir.(Denedim.)
Büyük ihtimalle Apache'yi oluşturmak için gereken başlık dosyaları ile birlikte mod_rewrite ve PHP kurulu gelmez.Lütfen dağıtımınızın CD/DVD'sine bakınız ve geliştirici paketi kurunuz (Sürüm değişebilir).
# rpm -i gdbm-devel-1.8.0-546
Bu işlem SuSE ve Red Hat için doğrulandı. Lütfen siz de Mandrake gibi RPM temelli sistemler için doğrulayın. Debian için aşağıda anlatılacaktır.
Debian temelli sistem kullanıcıları gdbm'i aşağıdaki gibi kurabilirler:
# apt-get install libgdbmg1-dev
Kaynak paketinden derleme ve kurulum
İstenmeyen bir durum olarak sizin dağıtımınız gdbm'i içermeyebilir. Kurmak için komutlar:
$ ./configure

$ make
# make install

# ldconfig
MySQL
MySQL nedir?
MySQL çok hızlı, güçlü ve yönetimi çok hoş bir veritabanıdır.
Özellikle çok okuma yapılıp az yazma yapılan web uygulamaları için, MySQL birinci seçimdir. Hemde en yeni versiyonu iş(transaction) yeteneğine sahiptir. Veritabanına çok fazla veri yazacak bir Web uygulaması planlıyorsanız sizin projeniz için PostgreSQL bölümünde kurulumunu göreceğimiz PostgreSQL daha uygun olabilir.
Eğer PHP'ye MySQL desteği verirseniz, PHP derlemek için MySQL'den C-API 'ye ihtiyaç var. Eğer mod_authmysql'de kullanmak istiyorsanız, mod_auth_mysql bölümüne bakınız.
Kaynak paketini indirin
Derleme ve Kurulum
$ cd /usr/local
$ tar -xvzf mysql-3.23.55.tar.gz
$ cd mysql-3.23.55

$ ./configure \
--prefix=/usr/local/mysql \
--enable-assembler \
--with-innodb \
--without-debug

$ make
# make install

# /usr/local/mysql/bin/mysql_install_db
# echo /usr/local/mysql/lib/mysql >> /etc/ld.so.conf
# ldconfig
Güvenli bir geliştirme için MySQL sisteminize MySQL kullanıcısı ekleyin.
# chown -R mysql /usr/local/mysql/var
MySQL'i başlangıçta otomatik olarak başlatmak için, /usr/local/mysql/share/mysql/mysql.server/etc/init.d/ altına veya başlatma betikleriniz neredeyse oraya kopyalayın. Ana çalışma seviyesi dizininde uygun bir sembolik bağ oluşturun:
# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/

# ln -s /etc/init.d/mysql.server /etc/init.d/rc3.d/S20mysql
# ln -s /etc/init.d/mysql.server /etc/init.d/rc3.d/K20mysql
MySQL güvenliği
Bu bölüm seçimliktir ve MySQL'in yerel sunucu IP'sine nasıl bağlanacağını gösterir.
MySQL'i 127.0.0.1 geridönüş arayüzüne bağlamanızı öneririm. Böylece MySQL'e ağ yoluyla kimse bağlanamaz. Ancak tabii ki bu durumda MySQL ve web sunucu aynı makinada çalışmalıdırlar.
/etc/init.d/mysql.server dosyasını açın ve 107. satırı aşağıdaki gibi düzenleyin:
Orijinal satır:
$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file&
Değişmiş hali:
$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file \
--bind-address=127.0.0.1&   
1
Burada hangi arayüzün MySQL'e bağlanması gerektiğini tanımlayabilirsiniz.
Seçenek olarak MySQL'in bütün ağ işlevlerini devre dışı bırakabilirsiniz:
$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file \
--skip-networking &
mm kurulumu
mm nedir?
MM kütüphanesi Unix platformu altında çatallanan işler arasında paylaşımlı belleğin kullanımını basitleştiren 2 katmanlı soyutlama kütüphanesidir. Birinci katmanda paylaşımlı bellek parçasıyla ilgilenildiğinde, bütün platform bağımlı uygulama ayrıntılarını gizler. İkinci katmanda, paylaşımlı bellek parçasında veri yapıları ile çalışmak için yüksek seviyeli malloc tarzı bir arayüz sağlar.
    -- www.engelschall.com
Unix programcılarının paylaşımlı belleğe (shm) kolay erişimini sağlayan genel bir kütüphanedir. PHP ve mod_ssl gibi birçok ürün tarafından kullanılır.
Kaynak paketini indirin
Derleme ve Kurulum
$ cd /usr/local

$ tar -xvzf mm-1.2.2.tar.gz

$ cd mm-1.2.2

$ ./configure
$ make
$ make test
# make install

# ldconfig


[25] Bu RPM php için gereken başlık dosyalarını içerir.
[26] Sadece, eğer PHP CVS ağacından oluşturuluyorsa gerekiyor.
Önceki Üst Ana Başlık Sonraki
Giriş Başlangıç Apache'yi Temel Modülleriyle Elde Etme, Derleme ve Kurma
Bir Linux Kitaplığı Sayfası