Существует ли способ автоматически перезапустить Apache на Mac OS X, если он отказывает?

Я установил Apache с помощью MacPorts. Это отказывает время от времени, и я должен вручную перезапустить его.

Существует ли способ заставить Apache автоматически перезапускать, если он умирает по некоторым причинам? Возможно, использование launchd так или иначе?

1
задан 19.11.2011, 12:18

1 ответ

Использовать launchd запустить Apache и сделать Apache выполненным на переднем плане так launchd может контролировать его и перезапустить его, если это отказывает. Так как система включает a launchd объект (/System/Library/LaunchDaemons/org.apache.httpd.plist) для запуска встроенной версии Apache я просто скопировал бы это в /Library/LaunchDaemons, измените имя файла и Маркировку так launchd не получит их перепутанный, удалит Отключенный ключ и изменение ProgramArguments указать на версию MacPorts Apache. Обязательно сохраните -D и FOREGROUND аргументы httpd, или это будет сам daemonize и launchd запустит другой экземпляр, и ничто полезное не будет сделано.

(И действительно последуйте совету @RedGrittyBrick о нахождении фактической причины катастрофического отказа. В то время как launchd "правильный" путь состоит в том, чтобы запустить демона как Apache на  Mac OS X, это - просто лейкопластырь для любого проблемного Apache, имеет.)

1
ответ дан 17.12.2019, 00:25

Теги

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