Как да настроите виртуални хостове в Apache 2
Тази статия описва как да създадете множество виртуални хостове на локална машина. Това действие е необходимо за уеб администраторите, когато разработват повече от един сайт.
В Debian 5.0.4 сървърът Apache-2 е готов за работа с виртуални хостове веднага след инсталирането. Но конфигуриран само за един (по подразбиране) хост.
За да добавите друг виртуален хост, направете следното:
1. Добавете празен файл с произволно име към директорията /etc/apache2/sites-available (по-добре е да дадете името на файла, съдържащ името на виртуалния хост). Например, ако планирате да добавите виртуален хост с име studio.ru, файлът трябва да се наименува като studio.ru.conf.
2. В този файл трябва да въведете нещо като следното:
- ServerName, ServerAlias е URL адресът, въведен в браузъра, на който този виртуален хост трябва да отговори;
- DocumentRoot е основната директория на този виртуален хост;
- Раздел Директория - задаване на права за достъп до посочената директория. В този случай правата за достъп до основната директория на виртуалния хост са конфигурирани.
Трябва да обърнете внимание на параметъра на секцията VirtualHost. Тук е написано като "*:80". Но не забравяйте да погледнете във файла /etc/apache2/sites-available/default и да видите какъв параметър е записан там в същата секция VirtualHost. Ако е написано "*", то в нашия файл трябва да напишем и "*".
Най-общо казано, най-добре е да погледнете във файла /etc/apache2/ports.conf. Там трябва да намерите директивата:
Каква стойност има в тази директива (тук - "*: 80"), тази стойност трябва да бъде посочена като параметър на секцията VirtualHost във всички файлове на директорията /etc/apache2/sites-available, в противен случай хостовете няма да бъдат видими.
Често срещана грешка е, когато в /etc/apache2/ports.conf„*.80“ е написано и „*“ е написано в секцията VirtualHost на хост файла. В този случай Apache сървърът няма да намери хоста!
3. Трябва да отидем в директорията /etc/apache2/sites-enabled и да създадем там символна връзка към файла, който създадохме:
# ln -s /etc/apache2/sites-available/studio.ru.conf studio.ru.conf
4. Трябва да рестартирате Apache с командите:
Спиране на уеб сървър: apache2. очакване.
Стартиране на уеб сървър: apache2.
по време на рестартирането трябва да погледнете дали в конзолата се появяват съобщения за грешка или предупреждения. В нормално конфигуриран Apache не трябва да се издават съобщения за грешка или предупреждения.
5. Последната стъпка е да отворите файла /etc/hosts и да напишете нов ред там със следното съдържание:
това ще позволи на браузъра да осъществява локален достъп до Apache, вместо да търси сайта в интернет.
Всичко, конфигурацията е завършена. Не е необходимо рестартиране.