Alt alanlar oluşturabilmek için birkaç şeyden emin olmanız gerekir:
DNS
Diğerlerinin ulaşabilmesi test.my.address.com
için önce bu adı sanal makinenizin IP adresine çözebilmeleri gerekir. Bu nasıl yapılabilir?
Arkadaşınız büyük olasılıkla zaten ne yaptık, bir yaratmaktı A kaydını içinde address.com
bölge, puan my
VM IP adresine.
Çok uzak çok iyi. Peki ya test.my
? Henüz bir girişi olmayabilir.
Arkadaşınız *.my
da bölgeye ekleyebilir (ve aynı IP adresine işaret edebilir). O zaman tüm istek something.my.address.com
VM'nize gönderilecek. Harika!
Apache Sanal Konakları
VM'nize erişildikten sonra Apache, isteğin nasıl ele alınacağını bilmek zorundadır. Apache HTTP sunucusunun Sanal Konak özelliğini kullanıyoruz .
Genelde Debian'ı çalıştırıyorum, bu yüzden bunu örnek bir yapılandırma ile açıklayacağım /etc/apache2/sites-available
. Orada bir dosya arayalım test.my.address.com
ve bilgiyle dolduralım.
<VirtualHost *:80>
ServerName test.my.address.com
ServerAdmin webmaster@my.address.com
DocumentRoot /var/www/test.my.address.com/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/test.my.address.com/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/test.my.address.com.error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/test.my.address.com.access.log combined
</VirtualHost>
Anahtar ayarı bu dosya içindedir ServerName
yönergesi . Bu, Apache'ye bu sunucunun hangi isim altında olması gerektiğini söyler . ServerAlias yönergesi ile ek adlar verilebilir .
Ayrıca Debian kullanıyorsanız sudo a2ensite test.my.address.com
, dosyayı oluşturduktan sonra bunu unutmayın sudo invoke-rc.d apache2 restart
.
Listen
, Apaches sanal konaklarına bakın: httpd.apache.org/docs/2.2/vhosts