Нужно было развернуть несколько локальных сайтов.
Чтобы не писать все по 1 — решил написать простой bash-скрипт.
Предполагается наличие установленных: apache2, bash, bind, MySQL Server, MySQL клиент, vsftpd (ftp сервер).
Запускаем из консоли скрипт в качестве параметров указываем имя пользователя.
Скрипт создает Базу данных MySQL, и создает файлы для поднятия локального имени user.local.net.
Рестартует ДНС (bind).
Так же есть доступ по ФТП к корневому каталогу пользователя.
Скрипт создает пользователя в системе.
#!/bin/bash clear echo "creating user $1" mkdir /var/www/html/$1 chmod 777 /var/www/html/$1 /bin/echo -e "<VirtualHost $1.local.net>nDocumentRoot /var/www/html/$1nServerName $1.local.netn<Directory "/var/www/html/$1">nallow from allnOptions +Indexesn</Directory>n</VirtualHost> n" > /etc/apache2/sites-available/$1.local.net ln -s /etc/apache2/sites-available/$1.local.net /etc/apache2/sites-enabled/ /bin/echo -e "1.1.168.192.in-addr.arpa. IN PTR $1.local.net.n" >> /etc/bind/db.44 /bin/echo -e "$1.local.net. IN A 192.168.1.1n" >> /etc/bind/db.local.net /bin/echo -e "<html>nHello user $1n</html>" > /var/www/html/$1/index.html /etc/init.d/bind restart /etc/init.d/apache2 restart echo "creating databases for user $1 ..." mysqladmin -u root -p create db$1 pass=`pwgen | cut -d " " -f1` /bin/echo -e "grant all on db$1.* to '$1'@'localhost' identified by '$pass' " > ./tmp.sql mysql -u root -p < ./tmp.sql rm -f ./tmp.sql echo "=============================================" echo " User $1 created " echo " Password for user $1 - =$pass= " echo "=============================================" echo "creating unix local user..." useradd -d /var/www/html/$1 $1 (echo $1:$pass)|chpasswd /bin/echo -e "local_root=/var/www/html/$1nanon_max_rate=200000000 nwrite_enable=Yesnanon_mkdir_write_enable=Yesnanon_other_write_enable=Yes nanon_upload_enable=Yesnchown_username=$1n" > /var/db/$1 |
Позже , если дойдут руки возможно опишу все это красиво на php.
Такой себе сам локальный хостер.
Скачать скрипт
У кого будут вопросы пишите в комментариях к данной статье.
Иногда запросы вебмастеров достаточн высокие. И среды виртуального хостинга бывает явно недостаточно. Выход есть - это выделенный сервер. На нем можно развернуть свою ОС. И нет ограничений ни по процессору ни по лимиту памяти.