Раздел вопрос-ответ Выключить один из nginx хостов

Имеется несколько сайтов, по сути виртуальных nginx хостов. Хочу один из хостов временно отключить, как правильнее всего временно отключить один из хостов nginx? Сервер на debian 7.

share

1 ответ

Для выключения nginx хоста нужно удалить его из enabled хостов и сделать reload для nginx. 

Если у вас debian, то скорее всего все активные хосты хранятся в /etc/nginx/sites-enabled/

На других дистрибутивах linux (например, ubuntu) nginx хосты еще могут хранится в /etc/nginx/conf.d/

1. Проверьтре, в каком из конфигурационных файлов лежит хост, который вы хотите отключить:

ls -la /etc/ngins/sites-enabled/
ls -la /etc/ngins/sites-available/
ls -la /etc/ngins/conf.d/

Пример вывода содержимого /etc/nginx/sites-enabled/:

[root@debian @master]$ ls -la /etc/nginx/sites-enabled/
total 8
drwxr-xr-x 2 root root 4096 Апр 21 16:15 .
drwxr-xr-x 5 root root 4096 Апр  8 23:14 ..
lrwxrwxrwx 1 root root   40 Апр 21 15:59 example-host.conf -> /etc/nginx/sites-available/example-host.conf
lrwxrwxrwx 1 root root   48 Мар  1 22:22 host.conf -> /etc/nginx/sites-available/host.conf
lrwxrwxrwx 1 root root   40 Апр  8 23:20 host2.conf -> /etc/nginx/sites-available/host2.conf

По примеру видно, что конфиги хостов хранятся в sites-available, но на них сделаны симлинки в каталог sites-enabled. Т.е. каталог /etc/nginx/sites-enabled/ это и есть каталог, в котором хранятся активные в данный момент nginx хосты. Для отключения хоста достаточно удалить симлинк в sites-enabled. Физически nginx конфиг отключаемого хоста удаляться не будет, а останется "лежать" в sites-available. Для того, чтобы снова задействовать хост, будет достаточно снова создать симлинк на него.

2. Удалите хост с помощью команды rm:

rm /etc/ngins/sites-enabled/example-host.conf

3. Перезапустите nginx:

nginx reload

Теперь виртуальный хост полностью выключен.

Добавить комментарий
    как минимум 5 символов

    icon Вход в систему

    зарегистрироваться
    НОВЫЕ ПОЛЬЗОВАТЕЛИ