目录 [显示隐藏] |
以源码方式编译安装的Apache是没有启动脚本的,也就是说用户不能通过简单的Server httpd start/stop/restart等操作。
为了使用简便,我们建立一个Apache的启动脚本,把Apache加入系统SysV服务。
# vi /etc/rc.d/init.d/httpd
将下列代码粘贴到httpd文件中:
#!/bin/bash
# Startup script for the Apache2.0.X Web Server# Fixed by Comsenz - Nanu (nanu@discuz.com)
# chkconfig: - 85 15
# Source function library.. /etc/rc.d/init.d/functions
if [ -f /etc/sysconfig/httpd ]; then. /etc/sysconfig/httpdfi
INITLOG_ARGS=""
apachectl=/usr/local/apache2/bin/apachectlhttpd=${HTTPD-/usr/local/apache2/bin/httpd}prog=httpdRETVAL=0
start() {echo -n $"Starting $prog: "daemon $httpd $OPTIONSRETVAL=$?echo[ $RETVAL = 0 ] && touch /var/lock/subsys/httpdreturn $RETVAL}stop() {echo -n $"Stopping $prog: "killproc $httpdRETVAL=$?echo[ $RETVAL = 0 ] && rm -f /var/lock/subsys/httpd /var/run/httpd.pid}reload() {echo -n $"Reloading $prog: "killproc $httpd -HUPRETVAL=$?echo}
case "$1" instart)start ;;stop)stop ;;status)status $httpdRETVAL=$? ;;restart)stopstart ;;condrestart)if [ -f /var/run/httpd.pid ] ; thenstopstartfi ;;reload)reload ;;graceful|help|configtest|fullstatus)$apachectl $@RETVAL=$? ;;*)echo $"Usage: $prog
{start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}"exit 1esac
exit $RETVAL
注意文件中的
apachectl=/usr/local/apache2/bin/apachectlhttpd=${HTTPD-/usr/local/apache2/bin/httpd}
两行,如果您的Apache不是安装在/usr/local/apache2,请根据情况更改以上两行中Apache的路径!
# chmod 755 /etc/rc.d/init.d/httpd
# chkconfig --add httpd# chkconfig --level 3 httpd on
这样,今后如需启动、停止、重启Apache就可以用以下方式了:
# service httpd start# service httpd stop# service httpd restart等等……
联系客服