Как перезапустить Nginx на Mac OS X?


54

Я только что установил Nginx на Mac OS X (спасибо http://www.kevinworthington.com/nginx-mac-os-snow-leopard-2-minutes/ ), но как мне перезапустить Nginx на Mac OS X?

Спасибо!


3
Если вы просто хотите перезагрузить компьютер из-за обновленной конфигурации, просто сделайте это sudo nginx -s reload.
hobbes3

Ответы:


112
sudo nginx -s stop && sudo nginx

1
Быстрый вопрос, что &&значит? Я думаю, это что-то другое, чем использовать ;?
hobbes3


4
этот ответ не работает для brew установлен nginx
vearutop

Кажется, это работает для моего варева, установленного nginx в 2019 году.
Barnabas Szabolcs

44

Для однострочника вы можете просто сделать:

sudo nginx -s reload

Эти -sопции означает сигнал, и это вариант вы будете использовать для отправки stop, quit, reopenи reloadсигналы Nginx.

Для получения дополнительной информации о параметрах, просто сделайте nginx -hсписок всех из них и их функций.

Ура!


2
Это не сработало для меня, поэтому мне пришлось сделать sudo nginxэто, чтобы начать. Я думаю, что это как-то связано с тем, что nginx уже был остановлен в моем случае.
Jamescampbell

1
Не могли бы вы сделать sudo nginx -s reload || sudo nginxвместо этого?
Джеймс Мерфи

12
sudo pkill nginx   
sudo nginx

Если pkillне удается найти, то brew install proctoolsсначала установите его, используя .


3
Приведенные выше ответы намного чище, и они позволяют изящно остановиться nginx.
Майк N

1
Это пригодилось, когда nginx начал плохо себя вести, и я не мог убить его с помощью sudo nginx -s quitилиsudo -s reload
скрепка

1
Это единственное, что сработало для меня. Спасибо.
A-Dubb

9

для варки: sudo brew services restart nginx


1
Эта команда не работает для меня вообще. Я устанавливаю nginx через brew ...
kris_IV

1
@kris_IV что выход?
18:18

1
после запуска: brew services restart nginxя получаю ответ: Stopping nginx ... (might take a while) ==> Successfully stopped nginx` (метка: homebrew.mxcl.nginx) ` ==> Successfully started nginx` (метка: homebrew.mxcl.nginx)`
kris_IV

1
@kris_IV, а почему вы думаете, что эта команда не работает тогда? все хорошо согласно вашему выводу
dimaninc

1
Я знаю, что вывод в порядке, но новый конфиг не работает вообще, но когда я использую sudo nginx -s stop && sudo nginxвместо этого все в порядке, и новый конфиг работает.
kris_IV

5

Если вы используете варку :

Чтобы увидеть все услуги:

brew services list

Запустите сервис nginx:

brew services start nginx

Остановите службу nginx:

brew services stop nginx

1

sudo nginx -s выйти && sudo nginx

Checkout Nginx руководство


1
Это делает работу, но вы уверены, что правильный сценарий оболочки не существует? Этот метод очень сырой.
asdmin

1
По крайней мере, это официальная документация. Конечно, я буду следовать этому решению также. Спасибо.
Франциско Мария Калисто

1

Используете MAMP и Nginx? Тогда у вас есть установленный скрипт:

sudo /Applications/MAMP/bin/restartNginx.sh 

1

Еще одно замечание: если вы хотите запустить nginx с launchctl, при загрузке Mac вы можете сделать следующее:

sudo cp /usr/local/opt/nginx/*.plist /Library/LaunchDaemons
sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.nginx.plist

Короче говоря, вы должны положить свой plistфайл /Library/LaunchDaemons, а не в соответствии ~/Library/LaunchAgentsс инструкциями Homebrew . Наконец, используйте -wопцию с launchctl. Для получения дополнительной информации следуйте этому руководству.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.