Перезапустить nginx mac os

Обновлено: 03.07.2024

В этом руководстве объясняется, как запустить, остановить и перезапустить Nginx на серверах Linux.

Подготовка

В инструкциях предполагается, что вы вошли в систему как пользователь root или пользователь с привилегиями sudo .

Большинство текущих дистрибутивов Linux используют SystemD в качестве системы инициализации и диспетчера служб по умолчанию. Старые дистрибутивы основаны на SysVinit и используют сценарии инициализации для управления службами.

И сервисные блоки SystemD, и скрипт SysVinit принимают следующие аргументы для управления сервисом Nginx:

  • start : start службу Nginx.
  • stop : завершает работу службы Nginx.
  • restart : останавливает, а затем запускает службу Nginx.
  • reload : плавно перезапускает службу Nginx. При перезагрузке основной процесс Nginx завершает дочерние процессы, загружает новую конфигурацию и запускает новые дочерние процессы.
  • status : показывает статус услуги.

Команды для управления службой Nginx одинаковы для всех дистрибутивов Linux.

Запуск, остановка и перезапуск Nginx с помощью systemctl

Всякий раз, когда вы вносите изменения в конфигурацию Nginx, вам необходимо перезапустить или перезагрузить процессы веб-сервера. Выполните следующую команду, чтобы перезапустить службу Nginx:

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

Выполните команду ниже, чтобы перезагрузить службу Nginx:

Nginx также можно напрямую контролировать с помощью сигналов . Например, чтобы перезагрузить службу, вы можете использовать следующую команду:

Чтобы запустить службу Nginx, выполните:

Выполните следующую команду, чтобы остановить службу Nginx:

Запуск, остановка и перезапуск Nginx с помощью SysVinit

Более старые (EOLed) версии Ubuntu, CentOS и Debian используют сценарии init.d для запуска, остановки и перезапуска демона Nginx.

Перезапустите сервис Nginx:

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

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

Выводы

Мы показали вам, как запускать, останавливать и перезапускать веб-сервер Nginx в системах Linux.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии ниже.

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

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

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

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

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

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

Эта команда не работает для меня вообще. Я устанавливаю nginx через brew . после запуска: brew services restart nginx я получаю ответ: Stopping nginx . (might take a while) ==> Successfully stopped nginx` (метка: homebrew.mxcl.nginx) ` ==> Successfully started nginx` (метка: homebrew.mxcl.nginx)` @kris_IV, а почему вы думаете, что эта команда не работает тогда? все хорошо согласно вашему выводу Я знаю, что вывод в порядке, но новый конфиг не работает вообще, но когда я использую sudo nginx -s stop && sudo nginx вместо этого все в порядке, и новый конфиг работает.

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

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

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

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

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

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

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

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

Короче говоря, вы должны положить свой plist файл /Library/LaunchDaemons , а не в соответствии

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

Я использую nginx в OS X 10.8. Недавно установлен nginx , но не могу найти способ перезапустить nginx, кроме как kill nginx_pid сказать kill 64116 . Хотите знать, есть ли более эффективные способы перезапустить nginx .

Нашел несколько методов в Google и SO, но не сработал:

Где находится ваш pid-файл nginx? Это указывается в файле конфигурации, пути по умолчанию указываются во время компиляции в сценарии конфигурации. Вы можете искать это как таковое:

find / -name nginx.pid 2>/dev/null (должно выдаваться при работающем nginx)

Один из способов остановить или перезагрузить - выполнить следующую команду:

Запускайте перезагрузку, только если nginx запущен:

Выполнив указанные выше действия, вы не получите nginx: [error] open () "/usr/local/var/run/nginx.pid" этой проблемы

Это может просто означать, что nginx уже остановлен, а не запущен в данный момент.
Сначала убедитесь, что nginx запущен, выполните:

Чтобы перезагрузить пользовательский файл конфигурации, используйте

Проверьте, существует ли этот каталог:

Эта ошибка может возникнуть, когда nginx пытается инициализировать файл pid в локализации, которой не существует.

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

Обычно нет особых причин перезапускать Nginx , как Apache . Если вы изменили файл конфигурации, вы можете просто захотеть перезагрузить его.

Сначала убей прогресс

Затем запустите nginx

sudo nginx -s stop

За которым следует:

Похоже, что nginx отслеживает свое состояние, и если вы остановите его дважды, он пожалуется. Но все вышеперечисленное сработало для меня.

Чтобы перезагрузить файлы конфигурации:

Чтобы полностью перезапустить nginx :

Подробности

Нет сигнала restart для nginx. В документации приведены сигналы, которые принимает главный процесс:

Нет необходимости возиться с pid вручную.

Изменить: только что понял, что большая часть этой информации уже была в комментариях к другим ответам. В любом случае оставим это здесь, чтобы резюмировать ситуацию.

Попробуйте запустить sudo nginx перед запуском nginx.

Здесь есть ошибка. В зависимости от того, запущен ли nginx при изменении / перезапуске apache и / или изменении конфигураций nginx, этот файл (который по сути является просто указателем идентификатора процесса) может быть уничтожен.

Я фактически оказался в состоянии, когда два процесса nginx работали одновременно, поэтому убили оба.

Я использую nginx в OS X 10.8. Недавно установленный nginx , но не может найти способ перезапустить nginx, кроме kill nginx_pid , скажем, kill 64116 . Интересно, есть ли лучшие способы перезапустить nginx .

Нашел несколько методов в Google и SO, но они не сработали:

Иногда также получаю эту ошибку msg:

Я пытаюсь перезапустить свой сервер NGINX, но он терпит неудачу. Когда я набираю nginx -t , я получаю следующий результат. Я запускаю виртуальные серверные блоки, используя Ubuntu 14.04 на этой капле. У меня, кажется, есть дубликат файла, но я, кажется, могу понять, как решить эту проблему .

Попробуйте запустить sudo nginx перед запуском nginx.

Для перезагрузки конфигурационных файлов:

Чтобы полностью перезапустить nginx :

Подробности

Нет сигнала restart для nginx. Из документов вот сигналы, которые принимает главный процесс:

Нет необходимости возиться с ПИД вручную.

Edit: только что понял, что большая часть этой информации уже была в комментариях к другим ответам. В любом случае, оставляю это здесь, чтобы подытожить ситуацию.

Каково ваше местоположение файла nginx pid? Это указано в конфигурационном файле, пути по умолчанию указаны во время компиляции в конфигурационном скрипте. Вы можете искать его как таковой:

find / -name nginx.pid 2>/dev/null (должен выдавать во время работы nginx)

Я установил nginx на passenger-install-nginx-module и запустил nginx на /opt/nginx/sbin/nginx , но я не знаю, как остановить или перезапустить nginx после обновления моего nginx conf. Я знаю, что могу использовать путь ps aux | grep и kill , это есть способ, как services restart nginx ?

я меняю файл nginx conf на php далее я хочу перезапустить nginx. но не может перезапустить nginx <?php if(exec(service nginx restart)) < echo ok shd; >else < echo error; >?> <hr> <?php if(exec(/etc/init.d/nginx reload)) < echo ok shd; >else < echo error; >?> <hr>.

Я делаю это вот так:

Сначала убейте прогресс

Затем начните nginx

sudo nginx -s stop

за ним последовал:

Кажется, что nginx отслеживает свое состояние, чтобы, если вы остановите его дважды, он пожаловался. Но все вышеперечисленное работало на меня.

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

Обычно нет особых причин для перезапуска Nginx , как это было бы необходимо Apache . Если вы изменили файл конфигурации, вам может просто понадобиться опция перезагрузки.

проверьте, существует ли этот каталог:

эта ошибка может возникнуть, когда nginx пытается инициализировать PID-файл в локализации, которая не существует.

Чтобы перезагрузить пользовательский конфигурационный файл, используйте

Здесь есть ошибка. В зависимости от того, работает ли nginx во время изменения/перезапуска apache и/или изменения конфигураций nginx, этот файл (который по сути является просто указателем процесса ID) может быть уничтожен.

На самом деле я оказался в состоянии, когда два процесса nginx работали одновременно, поэтому убил обоих.

Чтобы обойти это, вы можете либо принудительно завершить существующие процессы nginx через Activity Monitor (затем запустить nginx &, чтобы приложение cli создало новый файл nginx.pid), либо, если вам REALLY нужно сохранить nginx запущенным, но вы хотите запустить nginx-s reload - вручную создайте файл в пути /run с именем nginx.pid и вставьте PID из текущих запущенных процессов nginx (полученных через Activity Monitor).

Это может просто означать, что nginx уже остановлен - не работает в данный момент.
Во-первых, подтвердите, работает ли nginx, выполните:

Одним из способов остановки или перезагрузки является следующая команда,

Запускайте перезагрузку только в том случае, если nginx запущен:

Поступая так, как описано выше, вы не получите nginx: [error] open() "/usr/local/var/run/nginx.pid " этой проблемы

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

Поэтому я хочу иметь возможность cap:deploy без необходимости вводить какие-либо пароли. Я настроил все закрытые ключи, чтобы нормально добраться до удаленных серверов, и теперь использую svn вместо.

Я пытаюсь перезапустить свой сервер NGINX, но он терпит неудачу. Когда я набираю nginx -t , я получаю следующий результат. Я запускаю виртуальные серверные блоки, используя Ubuntu 14.04 на этой.

Я пытаюсь настроить службу nginx с помощью chef, но получаю ошибку ниже. Chef::Exceptions::Service ------------------------- service[nginx]: unable to locate the init.d script! Resource Declaration.

Я установил nginx на passenger-install-nginx-module и запустил nginx на /opt/nginx/sbin/nginx , но я не знаю, как остановить или перезапустить nginx после обновления моего nginx conf. Я знаю, что.

я меняю файл nginx conf на php далее я хочу перезапустить nginx. но не может перезапустить nginx <?php if(exec(service nginx restart)) < echo ok shd; >else < echo error; >?> <hr>.

Не могу найти, как перезапустить postgresql в OS X с помощью командной строки, чтобы применить изменения в pg_hba.conf. Я пробовал различные команды из интернета и документов. Как это сделать.

У меня есть задача в playbook, которая пытается перезапустить nginx через обработчик, как обычно: name: restart nginx service: name=nginx state=restarted Это дает мне следующую ошибку: RUNNING.

Я попытался установить nginx serve на mac os x, перейдя по ссылке ниже, когда я пытаюсь перезапустить сервер, он выдает мне ошибку ниже. Как установить Nginx webserver на Mac OS X sudo nginx -s stop.

Читайте также: