ты создаёшь папку с именем хоста, и он автоматом создаётся
Так вряд ли, а вот через BASH скрипт и консоль я настроил.
Запускаю скрипт, ввожу название сайта, и всё создается.
#!/bin/bash
echo -n "please enter site name: "
read new_site
mkdir $new_site
chown sergey:www-data -R $new_site
chmod 777 -R $new_site
echo "127.0.0.1 localhost $new_site" >> /etc/hosts
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/$new_site.conf
echo "<VirtualHost *:80>" >> /etc/apache2/sites-available/$new_site.conf
echo "ServerName $new_site" >> /etc/apache2/sites-available/$new_site.conf
echo "DocumentRoot /home/sergey/public_html/$new_site" >> /etc/apache2/sites-available/$new_site.conf
echo "</VirtualHost>" >> /etc/apache2/sites-available/$new_site.conf
a2ensite $new_site
service apache2 reload
Это мой скрипт, но вам не стоит бездумно копировать его.
Так как пути и функции отличаются.