NGINX
Якщо ви використовуєте один з офіційних пакетів версії nginx з http://nginx.org/packages/ , найкращим способом є перехід до /etc/nginx/conf.dкаталогу та перейменування файлу, на який впливає, із .confсуфікса, з іншим у вимкнути сайт:
sudo mv -i /etc/nginx/conf.d/default.conf{,.off}
Або навпаки, щоб це ввімкнути:
sudo mv -i /etc/nginx/conf.d/example.com.conf{.disabled,}
Це тому, що за замовчуванням /etc/nginx/nginx.confє така includeдиректива:
http {
…
include /etc/nginx/conf.d/*.conf;
}
Debian / Ubuntu
Однак якщо ви використовуєте похідне Debian / Ubuntu, то, крім цього conf.d, у вас можуть бути і нестандартні зліsites-available та sites-enabledкаталоги, деякі файли під якими можуть бути неохайно включені, не зважаючи на їх розширення:
http {
…
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
Таким чином, в Debian / Ubuntu вам спочатку доведеться з’ясувати, де знаходиться конфігурація сайту.
Ви можете використовувати таку команду, щоб отримати список усіх доступних сайтів, запустівши, find(1)щоб знайти всі звичайні файли, що відповідають заданій масці:
find /etc/nginx -maxdepth 2 -type f \( -path "*/conf.d/*.conf" -or -path "*/sites-*/*" \)
Ви можете використовувати таку команду, щоб отримати список усіх включених сайтів:
find /etc/nginx -maxdepth 2 \( -path "*/conf.d/*.conf" -or -path "*/sites-enabled/*" \)
Потім вимкніть / увімкніть сайти на Debian / Ubuntu:
Щоб вимкнути сайт: якщо конфігурація є conf.d, просто перейменуйте файл, щоб у нього більше не було .confсуфікса; або якщо є sites-enabled, перемістіть його з sites-enabled.
Щоб увімкнути сайт, найкращим способом було б перемістити його до /etc/nginx/conf.dта перейменувати, щоб мати .confсуфікс.
PS Чому я вважаю, що Debian - include /etc/nginx/sites-enabled/*;це зло? Спробуйте відредагувати пару файлів у цьому каталозі та emacsстворіть резервні файли (із ~суфіксом), а потім запитайте мене ще раз.