我的服务器(Ubuntu 11.10)上有 nginx。我在 /etc/init.d/php5cgi 中创建了下面的脚本来启动/停止/重新启动 php5-cgi。问题是 php5-cgi 时不时死机,导致我的网站(nginx)出现502错误的网关(我不知道为什么!!如果有人能告诉我们为什么 php5-cgi 会这样死掉,我将不胜感激)。
现在,我怎样才能告诉我的服务器让该进程永远保持活动状态,换句话说,在它停止后自动重新启动它(我虽然在编写一个 shell 脚本和 cron 作业来继续检查,但这意味着网站可能会停机一分钟 [从 cron 到另一个],这对我们来说不是一个选择 :( )。
任何关于频繁停止 php5cgi 的原因或如何让它永远保持活动状态的想法都非常感谢。
我的 /etc/init.d/php5cgi 是
命令=/usr/bin/spawn-fcgi 名称=php5-cgi 地址=127.0.0.1 端口=9000 用户=www-数据 集团=www-数据 PHPCGI=/usr/bin/php5-cgi KILL=/bin/kill 案例“$1” 开始) 启动-停止守护进程--启动\ --exec $命令-- -a $地址-p $端口\ -u $USER -g $GROUP -f $PHPCGI -P /var/run/$NAME.pid|| true echo -n "$NAME 以 pid 启动" cat /var/run/$NAME.pid 回声 ;; 停止) 如果[-e /var/run/$NAME.pid] 然后 $KILL `cat /var/run/$NAME.pid` rm /var/run/$NAME.pid echo "$NAME 已停止" 别的 echo "$NAME 未运行,/var/run/ 中没有 pid 文件" 菲 ;; 重新开始) $0停止 0 美元起 ;; *) echo "用法:$0 {start|stop|restart}" 出口 1 ;; 埃萨克 退出 $RETVAL