Aug 7 2013
Автоматизируем создание виртуальных хостов Apache (bash-скрипт)
Изрядно намучившись с созданием виртуальных хостов решил написать bash-скрипт для автоматизации этого процесса, а заодно попрактиковаться в написании таковых. Скрипт выкладываю, может кому пригодится:
#!/bin/bash
domain=$1
user=georgy
group=georgy
dm=`ls /etc/apache2/sites-available/$domain`
if [[ "$dm" = "/etc/apache2/sites-available/$domain" ]]
then
echo 'Домен уже существует. Выберите другое имя'
else
# запись в hosts
echo "127.0.0.1 $domain" >> /etc/hosts
echo "Создание директорий для домена $domain"
mkdir -p /home/georgy/htdocs/$domain/www
mkdir -p /home/georgy/htdocs/$domain/logs
chown -R $user:$group /home/georgy/htdocs/$domain
echo "Создание виртуального хоста для домена $domain"
echo "<VirtualHost *:80>
ServerName $domain
DocumentRoot /home/georgy/htdocs/$domain/www
<Directory /home/georgy/htdocs/$domain/www>
AllowOverride All
</Directory>
ErrorLog /home/georgy/htdocs/$domain/logs/error_log
</VirtualHost>" >> /etc/apache2/sites-available/$domain
echo "Включение виртуального хоста $domain"
a2ensite $domain
echo "Обновление конфигурации Apache"
/etc/init.d/apache2 reload
echo "Виртуальный хост создан"
fi
exit 0
В недалёком будущем планирую написать еще скрипт для удаления виртуальных хостов 🙂

Mar 16, 2015 @ 15:42:59
” >> /etc/apache2/sites-available/$domain
>>>
” >> /etc/apache2/sites-available/$domain.conf
актуально в Ubuntu 14.04
Apr 23, 2015 @ 00:17:30
Спасибо. Спасибо 1111. Подсказка очень помогла