Apache HTTP Sunucusu Sürüm 2.2
IP’ye dayalı deyince, sunucunun her IP’ye dayalı sanal konak için ayrı bir IP adresine sahip olduğunu anlıyoruz. Bunun olması için, makine ya çok sayıda ağ bağlantısına sahiptir ya da makinede, günümüzde çoğu işletim sistemi tarafından desteklenen sanal arabirimler kullanılıyordur. (Sanal arabirimlerle ilgili ayrıntılar için sistem belgelerinize bakınız; bu konu genellikle IP rumuzları (ip aliases) olarak geçer ve ayarlamak için genellikle "ifconfig" komutu kullanılır.)
Çok sayıda konağı desteklemek üzere Apache iki şekilde
yapılandırılabilir. Ya her konak için ayrı bir httpd
süreci çalıştırırsınız ya da tüm sanal konakları destekleyen tek bir
süreciniz olur.
Çok sayıda süreç kullanıyorsanız:
User
,
Group
,
Listen
ve
ServerRoot
yönergeleri farklı
değerlerle yapılandırılmış iki ayrı süreç çalıştırmanız gerekir.httpd
programı N-1 adresi dinlerken
diğerleri kalan adresleri dinleyebilir.)Tek bir süreç kullanıyorsanız:
httpd
yapılandırmasının sanal konaklar arasında
paylaşılmasına izin veriliyor demektir.Her sanal konak için ayrı bir httpd
yapılandırması
oluşturulur. Her yapılandırmada, o süreç tarafından sunulacak IP adresi
(veya sanal konak) için Listen
yönergesi kullanılır. Örnek:
Listen www.birkobi.dom:80
Burada konak ismi yerine IP adresi kullanmanız önerilir (ayrıntılar için DNS ile ilgili konular belgesine bakınız).
Bu durum için, ana sunucu ve sanal konakların tümüne gelen istekler tek
bir httpd
süreci tarafından karşılanır. Yapılandırma
dosyasında, her sanal konak için, farklı değerlere sahip ServerAdmin
, ServerName
, DocumentRoot
, ErrorLog
veTransferLog
veya CustomLog
yönergeleri
içeren ayrı birer VirtualHost
bölümü
oluşturulur. Örnek:
<VirtualHost www.birkobi.dom>
ServerAdmin bilgi@posta.birkobi.dom
DocumentRoot /gruplar/birkobi/belgeler
ServerName www.birkobi.dom
ErrorLog /gruplar/birkobi/günlükler/hatalar.log
TransferLog /gruplar/birkobi/günlükler/erisim.log
</VirtualHost>
<VirtualHost www.digerkobi.dom>
ServerAdmin bilgi@posta.digerkobi.dom
DocumentRoot /gruplar/digerkobi/belgeler
ServerName www.digerkobi.dom
ErrorLog /gruplar/digerkobi/günlükler/hatalar.log
TransferLog /gruplar/digerkobi/günlükler/erisim.log
</VirtualHost>
Burada konak isimlerinin yerlerine IP adreslerini kullanmanız önerilir (ayrıntılar için DNS ile ilgili konular belgesine bakınız).
Süreç oluşturmayı denetleyen yönergeler ve bir kaç başka yönerge dışında
hemen hemen tüm yapılandırma yönergeleri VirtualHost
bölümleri içinde kullanılabilir. Bir
yönergenin VirtualHost
bölümlerinde
kullanılıp kullanılmayacağını öğrenmek için yönerge dizinini kullanarak yönergenin Bağlam’ına bakınız.
suEXEC sarmalayıcısı kullanıldığı takdirde
SuexecUserGroup
yönergesi de
bir VirtualHost
bölümü içinde
kullanılabilir.
GÜVENLİK:Günlük dosyalarının yazılacağı yeri belirlerken, Apache’yi başlatan kullanıcıdan başka kimsenin yazamayacağı bir yerin seçilmesi bazı güvenlik risklerini ortadan kaldırmak bakımından önemlidir. Ayrıntılar için güvenlik ipuçları belgesine bakınız.