我想從C語言編寫CGI腳本這是一個ucLinux的系統內重新啓動寶兒Web服務器。系統調用(「/ etc/init.d/boa.sh restart」)成功運行,我從日誌中看到Boa已停止,但從未啓動。從CLI運行boa.sh重啓確實可行。下面顯示了boa.sh腳本。任何想法,爲什麼它不完全重新啓動?請注意,CGI腳本本身在Boa中運行。呼叫重啓從CGI腳本沒有完全重新啓動
NAME=boa
PROG=/bin/boa
OPTIONS="-c /etc/"
LOCKFILE=/var/lock/boa
STDLOGFILE=/var/log/boaerrlog.log
case "$1" in
start)
echo -n $"Starting $NAME: "
boa $OPTIONS > /dev/null 2>&1 &
# boa $OPTIONS >$STDOUTFILE 2>&1 &
touch $LOCKFILE
echo "OK"
;;
stop)
echo -n $"Stopping $NAME: "
kill -TERM `pidof $NAME` > /dev/null 2>&1
rm -f $LOCKFILE $PIDFILE > /dev/null 2>&1
echo "OK"
;;
restart)
$0 stop
$0 start
;;
status)
echo "running"
;;
esac
運行CGI腳本的用戶是否有權限啓動所有文件/目錄?您可能需要通過CGI腳本使用sudo命令才能獲得所有必需的權限。 – Lipongo
是的權限應該沒問題,它是一個非常小的嵌入式系統,只有root用戶。感謝您的建議。 –
您是否有任何記錄表明停止實際上已成功完成?或記錄表明開始實際上是開始? – Lipongo