Скрипт создает сайт и файлы конфигурации для него, затем включает сайт и перезапускает Apache сервер. Скрипт позволяет очень быстро настроить сайт. Запускать необходимо как root
или использовать команду sudo
.
- Проверяет наличие
root
привилегий и необходимых аргументов, затем происходит создание сайтов - Проверяет наличие конфигурации в директории
/etc/apache2/sites-available/
(данный параметр изменяется в начале файла скрипта) а также, если каталог текущего веб-сайта пуст или нет.- Если директория не существует, она будет создана;
- Если директория не пустая или файл конфигурации Apache существует, создание текущего веб-сайта будет пропущено.
- Создается директория сайта, используя имя сайта. В директории сайта скрипт создает
index.php
с функциейphpinfo()
(можно изменить в начале скрипта). - Добавляет соответствующий конфиг в Apache (по умолчанию к имени сайта добавляется
.loc
, напримерnamesite.loc
, именно по такому адресу затем будут доступны сайты). - После генерации всех конфигов скрипт перезапускает Apache.
- Скачайте скрипт с Github или клонируйте его:
git clone https://github.com/alexsoin/addsiter.git
- Можно начать использовать его из папки, но было бы полезно переместить его куда-нибудь:
mv addsiter/addsiter.sh ~/bashscripts/addsiter.sh
Убедитесь, что скрипт можно выполнить:
chmod +x ~/bashscripts/addsiter.sh
- Создайте псевдоним для скрипта. Например
addsite
:
echo 'alias addsite="~/bashscripts/addsiter.sh"' >> ~/.bashrc
Также добавляем алиас для команды sudo (если ранее это небыло сделано, без этого алиаса команда может не запускаться)
echo 'alias sudo="sudo "' >> ~/.bashrc
ИЛИ создаем символическую ссылку на файл:
sudo ln -s /home/user/bashscripts/addsiter.sh /usr/bin/addsite
Не обязательные аргументы:
-d root директория для сайта. По умолчанию будет использоваться /var/www/html/
Примеры:
./addsiter testsite
↑ эта команда добавит сайт testsite
, который затем будет доступен по ссылке testsite.loc
./addsiter testsite -d mydir
↑ эта команда создаст каталог ./mydir и создаст сайт testsite
в текущем каталоге: