У меня на сервере есть nginx (Ubuntu 11.10). Я создал сценарий ниже в /etc/init.d/php5cgi для запуска / остановки / перезапуска php5-cgi. проблема в том, что php5-cgi время от времени умирает, что заставляет мой веб-сайт (nginx) давать 502 Неверный шлюз (и я не знаю почему !! Было бы очень признательно, если бы кто-нибудь сказал нам, почему php5-cgi вот так умирает).
теперь, как я могу сказать своему серверу, чтобы этот процесс оставался живым вечно, другими словами, чтобы перезапустить его автоматически, если он был остановлен (я, хотя и делал сценарий оболочки и задание cron, чтобы продолжать проверку, но это означает, что веб-сайт может спуститься на минуту [от cron к другому], и это не вариант для нас :().
Любая идея о причине частой остановки php5cgi или о том, как сохранить его вечно, высоко ценится.
Мой /etc/init.d/php5cgi - это
COMMAND=/usr/bin/spawn-fcgi NAME=php5-cgi ADDRESS=127.0.0.1 PORT=9000 USER=www-data GROUP=www-data PHPCGI=/usr/bin/php5-cgi KILL=/bin/kill case "$1" in start) start-stop-daemon --start \ --exec $COMMAND -- -a $ADDRESS -p $PORT \ -u $USER -g $GROUP -f $PHPCGI -P /var/run/$NAME.pid|| true echo -n "$NAME started with pid " cat /var/run/$NAME.pid echo ;; stop) if [ -e /var/run/$NAME.pid ] then $KILL `cat /var/run/$NAME.pid` rm /var/run/$NAME.pid echo "$NAME stopped" else echo "$NAME is not running, no pid file in /var/run/" fi ;; restart) $0 stop $0 start ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 ;; esac exit $RETVAL