管理http服务的脚本

由于老是需要重新安装系统,重一次都要重新设置http服务的启动脚本。麻烦,所以这一次就把脚本备份出来。

httpd for Ubuntu

system: nginx + php-fpm

#! /bin/sh
### BEGIN INIT INFO
# Provides:          httpd
# Required-Start:    $all
# Required-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: Run http server
### END INIT INFO

exec_phpfpm="/opt/php5/sbin/php-fpm"
pid_phpfpm="/run/php-fpm.pid"
exec_nginx="/opt/nginx/sbin/nginx"
pid_nginx="/run/nginx.pid"

## 停止php-fpm服务
do_stop_phpfpm() {
    echo -n "Stoping php-fpm... "
    kill -QUIT `cat ${pid_phpfpm}` > /dev/null 2>&1
    if [ $? -eq 0 ];then
        show_success
    else
        show_failed
    fi
    echo ""
}

## 输出OK
show_success() {
	echo -n "\033[32m [OK] \033[0m"
}

## 输出NO
show_failed() {
	echo -n "\033[37m [NO] \033[0m"
}

## 启动php-fpm服务
do_start_phpfpm() {
    echo -n "starting php-fpm... "
    $exec_phpfpm -g $pid_phpfpm > /dev/null 2>&1
    if [ $? -eq 0 ];then
		show_success
    else
        echo -n "\033[37m [NO] \033[0m"
    fi
    echo ""
}

## nignx重新加载设置
do_reload_nginx() {
    $exec_nginx -s reload > /dev/null 2>&1
    echo "\033[32m nginx reload config successfully. \033[0m"
}

## 启动nginx服务
do_start_nginx() {
	 echo -n "Starting nginx... "
    $exec_nginx > /dev/null 2>&1
    if [ $? -eq 0 ];then
		show_success
    else
        show_failed
    fi
    echo
}

##  停止nginx服务
do_stop_nginx() {
	echo -n "Stoping nginx..."
	$exec_nginx -s stop > /dev/null 2>&1
	if [ $? -eq 0 ];then
		show_success
    else
        show_failed
    fi
    echo
}

case $1 in
start)
echo "starting httpd server..."
do_start_phpfpm
do_start_nginx
;;
stop_phpfpm)
echo "stoping php-fpm server..."
do_stop_phpfpm
;;
stop_nginx)
echo "stoping nginx server..."
do_stop_nginx
;;
start_nginx)
echo "starting nginx server..."
do_start_nginx
;;
restart_nginx)
echo "restart nginx server..."
do_stop_nginx
do_start_nginx
;;
restart_phpfpm)
echo "restart php-fpm server..."
do_stop_phpfpm
do_start_phpfpm
;;
restart)
echo "restart httpd server..."
do_stop_phpfpm
do_stop_nginx
do_start_phpfpm
do_start_nginx
;;
stop)
echo "stop httpd server..."
do_stop_phpfpm
do_stop_nginx
;;
reload)
echo "reload nginx config"
do_reload_nginx
;;
*)
echo "USE:httpd start|restart|reload|stop|restart_phpfpm|stop_phpfpm|stop_nginx|start_nginx"
;;
esac

exit 0

管理http服务的脚本

时间: 2024-08-30 03:03:26

管理http服务的脚本的相关文章

运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

运维经验分享(五)-- 改进的java进程管理的服务控制脚本

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

利用chkconfig 管理启动服务及脚本一个坑点

利用chkconfig 管理启动服务及脚本一个坑点 在启动脚本头部: #!/bin/bash #chkconfig:  2345 63 90 #description: this is a example 彩色部分是chkconfig管理的要点,必须写入,同时绿色部分代表所引用的运行级别,×××代表启动顺序,越小越靠前[00-99],蓝色部分代表关闭顺序,越小越靠前[00-99],我为了不影响,用了一个100,报错了,所以是个坑点,网络上也没有相关说明.是自己试出来的. 其实启动就相当于开机自动

运维经验分享(七)-- Linux Shell之ChatterServer服务控制脚本第三次优化

运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行Shell脚本的问题(一)> <运维经验分享(四)--关于 java进程管理的服务控制脚本编程思路分析> <运维经验分享(五)-- 改进的java进程管

利用Python脚本管理Windows服务

Windows服务常用的功能就是启动服务,关闭服务,重启服务和查询服务运行状态,其中查询服务运行状态是其他三种操作的基础. 本文中提到的使用Python脚本管理Windows服务实际上是调用win32serviceutil模块,此模块来自pywin32包,此模块本身有管理服务的功能,有兴趣的可以去阅读它的部分源码. 本脚本存在的目的是为了熟练Python的语法和基本操作,Windows下有更好的命令行工具来管理服务,如sc.Powershell等.通常命令行工具的执行速度要比services.m

centOS 6 服务管理与服务脚本

服务管理与服务脚本 linux服务 服务管理与服务脚本 linux服务 服务启动过程详解 chkconfig命令 非独立服务与xinetd进程 一个特殊的服务脚本 服务启动过程详解 在开机启动过程中,我们计算机的各种服务也会按照配置信息启动服务,那个我们的服务使如何启动的呢?我们以 init 3模式为例,进行说明: 上图中:rc 3 --> 意味着读取/etc/rc.d/rc3.d/下的内容,现在我们看看/etc/rc.d/rc3.d/下有什么东西. 在/etc/rc.d/rc3.d/目录下,我

详解CentOS配置和管理web服务-Apache

详解CentOS配置和管理web服务-Apache 家住海边喜欢浪:zhang789.blog.51cto.com 目录 1.web介绍 2.web历史和工作原理 3.http请求流程 4.关于Apache 5.Apache服务器软件安装使用 6.符号链接和虚拟目录 7.页面重定向 8.Apache日志文件 9.Apache安全配置 10.虚拟主机 10.1.基于IP 10.2.基于域名 10.3.基于端口 web服务器配置和管理 http协议简介 http协议,全称HyperText Tran

Linux Shell之ChatterServer服务控制脚本

本脚本是ChatterServer的服务控制脚本,即能通过service命令来控制ChatterServer的启动.停止.重新启动以及状态查看,就像mysql有/etc/init.d/mysql或/etc/init.d/mysqld一样,只是这个ChatterServer的服务控制脚本写起来更加困难,有些信息的捕获和判断更加复杂,原因还是主要与ChatterServer的运行方式和启动过程中发生的一些事情有关,这个在脚本的注释中已经充分的标注清楚了. 由于ChatterServer运行在Ubun

Java用wmi4j远程管理Windows服务

原文请访问:http://www.chenlichao.cn/opensource/74.html wmi4j是纯Java实现的Windows WMI客户端,它基于j-interop针对WMI重新封装,提供了更便捷的方法,能满足基本的windows管理,包括服务管理,性能查询,执行脚本等等. wmi4j下载 用Maven的朋友们可以直接引入,groupId=cn.chenlichao, artifactId=wmi4j, version=0.9. 源码地址: Github: https://gi