Как развернуть многосайтовый Apache2 на локальной машине с Debian
2011.05.18
Для веб-разработки, особенно если ты фрилансер, бывает необходимо вести одновременно несколько веб-сайтов, и держать, соответственно, их девелопмент-версии на локальной машине. Настроить локальный Апач в Debian 6.0 довольно просто, надо только догадаться, как. :)
Общий план
Настраивать многосайтовость будем на основе name-based virtual hosts, в документации к Apache2 это находится здесь: Name-based Virtual Host Support. План работы такой:\
- Создаём каталог для веб-сайта
- Создаём новый файл конфигурации для этого веб-сайта
- Прописываем сайт в файле /etc/hosts
Создание виртуального хоста
В Apache2 все виртуальные хосты расписаны отдельными конфигами в каталоге\
/etc/apache2/sites-available/
Этот каталог неудобен тем, что доступ в него есть только у рута, а нам может понадобиться несколько раз править конфиг в процессе разработки. Поэтому создаём новый текстовый файл в домашнем каталоге и вписываем в него буквально следующее (этого будет достаточно):\
<VirtualHost *:80>
ServerName <имя сервера>
DocumentRoot <абсолютный путь к каталогу>
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
Имя сервера будет тем именем, которое мы будем в итоге набирать в адресной строке браузера, чтобы добраться до локального сайта, например, «mysite.localhost».
После того, как конфиг создан, делаем на него симлинк с каким-нибудь именем в каталоге\
/etc/apache2/sites-enabled/
Создание локального доменного имени
Для того, чтобы name-based virtual hosts работали, надо, чтобы Апач получал запрос к конкретному доменному имени, пусть даже запросы на разные доменные имена идут на один и тот же IP-адрес.
Пишем в /etc/hosts следующую строчку:\
127.0.0.1 <имя сервера>
Где «имя сервера» — это в точности ServerName нашего веб-сайта, для которого мы писали конфиг на предыдущем этапе.\
Всё, перезапускаем Апач.