Aby móc tworzyć poddomeny, musisz się upewnić, że masz kilka rzeczy:
DNS
Więc inni mogą dotrzeć test.my.address.com
, najpierw muszą być w stanie rozpoznać tę nazwę na adres IP maszyny wirtualnej. Jak można to zrobić?
Najprawdopodobniej twój przyjaciel już to zrobił Nagranie w address.com
strefa, która wskazuje my
na adres IP swojej maszyny wirtualnej.
Jak na razie dobrze. Ale co z test.my
? Może jeszcze nie mieć wpisu.
Twój przyjaciel może po prostu dodać *.my
do strefy (i wskaż ten sam adres IP). Następnie wszystkie prośby do something.my.address.com
zostanie wysłany do twojej maszyny wirtualnej. Świetny!
Wirtualne hosty Apache
Po osiągnięciu Twojej maszyny wirtualnej Apache musi wiedzieć, jak sobie z nią poradzić. Tutaj używamy Wirtualne hosty funkcja serwera HTTP Apache.
Zazwyczaj pracuję na Debianie, więc wyjaśnię to za pomocą przykładowej konfiguracji w /etc/apache2/sites-available
. Nazwijmy plik test.my.address.com
i wypełnij go informacjami.
<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 ustawienie klucza wewnątrz tego pliku jest ServerName
dyrektywa . To mówi Apache, pod jaką nazwą to serwer powinien być dostępny. Dodatkowe nazwy można podać za pomocą Dyrektywa ServerAlias .
Jeśli korzystasz z Debiana, nie zapomnij sudo a2ensite test.my.address.com
po utworzeniu pliku i sudo invoke-rc.d apache2 restart
.
Listen
, spójrz na wirtualne hosty Apache: httpd.apache.org/docs/2.2/vhosts