Untuk dapat membuat subdomain, Anda harus memastikan beberapa hal:
DNS
Jadi orang lain dapat mencapai test.my.address.com
, mereka pertama-tama harus dapat menyelesaikan nama itu ke alamat IP mesin virtual Anda. Bagaimana itu bisa dilakukan?
Apa yang kemungkinan besar sudah dilakukan teman Anda, adalah membuat catatan A di address.com
zona, yang menunjuk my
ke alamat IP VM Anda.
Sejauh ini baik. Tapi bagaimana dengan itu test.my
? Mungkin belum ada entri.
Teman Anda bisa menambahkan *.my
zona juga (dan arahkan ke alamat IP yang sama). Maka semua permintaan something.my.address.com
akan dikirimkan ke VM Anda. Besar!
Host Virtual Apache
Setelah VM Anda dapat dihubungi, Apache harus tahu cara menangani permintaan tersebut. Di sinilah kami menggunakan fitur Virtual Hosts dari server HTTP Apache.
Saya biasanya berjalan di Debian, jadi saya akan menjelaskan ini dengan contoh konfigurasi di /etc/apache2/sites-available
. Mari kita memiliki file di sana yang dipanggil test.my.address.com
dan mengisinya dengan informasi.
<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>
The Pengaturan kunci di dalam file ini adalah ServerName
direktif . Ini memberi tahu Apache nama server mana yang harus tersedia. Nama tambahan dapat diberikan dengan direktif ServerAlias .
Jika Anda menggunakan Debian juga, jangan lupa sudo a2ensite test.my.address.com
setelah Anda membuat file dan sudo invoke-rc.d apache2 restart
.
Listen
, lihat Apaches virtual hosts: httpd.apache.org/docs/2.2/vhosts