Как включить весь сайт confs с a2ensite (при передавании по 000-default.conf && значению-по-умолчанию-ssl.conf)?

Я использую сервер Ubuntu 16.04.2 с Apache2, на котором я храню свои личные веб-сайты.

Включить все мои conf файлы под /etc/apache2/sites-available (кроме того, 000-default.conf и ssl-default.conf), я перешел в /var/www/html и выполняемый a2ensite.

Мне затем сказали:

Your choices are: 
000-default default-ssl domain.tld1 domain.tld2 domain.tld3 domain.tld4 
Which site(s) do you want to enable (wildcards ok)?

Я затем сделал Ctrl+C, имеющий целью выполнить что-то еще.

Я ищу способ автоматически включить весь сайт confs, не отмечая определенный---я просто хочу выполнить команду, которая включит весь сайт confs, что я сам добавил.

10
задан 4 June 2017 в 23:51

6 ответов

Можно просто использовать find в вашем каталоге конфигурации.

find /etc/apache2/sites-available/ -type f -and -not -name "*default*" -exec a2ensite {} \;

Это находит все ваши файлы конфигурации, которые не имеют «по умолчанию» в своем имени, и активирует их.

18
ответ дан 23 November 2019 в 04:18

Вам необходимо перейти к /etc/apache2/sites-available, а затем выполнить команду:

sudo a2ensite *

Это включит все сайты в каталоге. (файлы должны быть примерно такими, как xxx.conf)

, а затем перезагрузить Apache, используя sudo service apache2 reload.

Итак, ваша последовательность команд должна быть такой:

cd /etc/apache2/sites-available
sudo a2ensite *
sudo service apache2 reload
8
ответ дан 23 November 2019 в 04:18

скопируйте вставляют следующие строки в имени файла apache_enable.sh

cd /etc/apache2/sites-available/
a2ensite *
service apache2 reload

и дают команду read+execute apache_enable.sh и выполняют сценарий с помощью пользователя root

1
ответ дан 23 November 2019 в 04:18

Каково наше текущее местоположение, команда sudo a2ensite "*.conf" попытается включить все конфигурационные файлы, помещенные в /etc/apache2/sites-available/.

Следующий мы можем использовать a2dissite 000-default.conf default-ssl.conf для отключения конфигураций Apache по умолчанию, и затем мы можем использовать systemctl restart apache2.service для перезапуска его.

Мы можем выполнить это все как единственная команда:

sudo bash -c "a2ensite '*.conf' && a2dissite 000-default.conf default-ssl.conf && systemctl restart apache2.service"

Что-то больше, мы можем создать пользовательскую команду через функцию в ударе:

function a2ensites {
        sudo bash -c "a2ensite '*.conf' && a2dissite 000-default default-ssl && systemctl restart apache2.service"
}
export -f a2ensites

Теперь у нас есть команда a2ensites, разработанная, чтобы сделать это задание. Для создания этой команды постоянной мы должны поместить вышеупомянутые строки в нижнюю часть ~/.bashrc файл и затем source это. Затем простой сценарий выполнит эту задачу:

 printf "\nfunction a2ensites { \n\tsudo bash -c \"a2ensite '*.conf' && a2dissite 000-default.conf default-ssl.conf && systemctl restart apache2.service\" \n}\nexport -f a2ensites\n" | tee -a $HOME/.bashrc; source $HOME/.bashrc
1
ответ дан 23 November 2019 в 04:18

Выполнение a2ensite /var/www/html/*/ заставит Apache включить каждый сайт conf, который имеет то же имя как dir сайта

Как побочный эффект, это также попытается соответствовать директорам сайта, которые не соответствуют для сайта conf файлам, как предсказано от следующего вывода, но я думаю, что это может быть проигнорировано безопасно:

ERROR: Site /var/www/html/domain.tld1 does not exist!
ERROR: Site /var/www/html/domain.tld2 does not exist!
ERROR: Site /var/www/html/nice_directory does not exist!
ERROR: Site /var/www/html/nice_file does not exist!

необходимо будет, вероятно, перезапустить Apache после включения conf файлы:

systemctl restart apache2.service
0
ответ дан 23 November 2019 в 04:18

Переместите конфигурации по умолчанию в другую папку, и затем * должен работать на Вас, поскольку Вы хотите ее к.

Переходят к папке, "доступной сайтам", так как она только работает в этой папке.

CD/etc/apache2/sites-available /

sudo a2ensite *

tested

0
ответ дан 23 November 2019 в 04:18

Другие вопросы по тегам:

Похожие вопросы: