因为老是须要又一次安装系统,重一次都要又一次设置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服务的脚本的更多相关文章

  1. 透过systemctl管理mysqld服务

    1. 背景 CentOS 7.x 之前的版本,系统启动时,第一支呼叫的程序是 init ,然后 init 去唤起所有的系统所需要的服务,无论是本地服务还是网络服务.所有的服务启动脚本都放置于 /etc ...

  2. centOS 6 服务管理与服务脚本

    服务管理与服务脚本   linux服务 服务管理与服务脚本 linux服务 服务启动过程详解 chkconfig命令 非独立服务与xinetd进程 一个特殊的服务脚本   服务启动过程详解 在开机启动 ...

  3. 自己编写服务启动脚本(一):functions文件详细分析和说明

    本文目录: 1.几个显示函数2.action函数3.is_true和is_false函数4.confirm函数5.pid检测相关函数 5.1 checkpid.__pids_var_run和__pid ...

  4. 监控与管理dubbo服务

    Dubbo是阿里多年前开源的一套服务治理框架,在众多互联网企业里应用广泛.本文介绍了一些如何监控与管理dubbo服务.使用的工具与<dubbox 的各种管理和监管>大致相同,本文更侧重于命 ...

  5. centos linux系统日常管理3 服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,curl,ping ,telnet,traceroute ,dig ,nc,nmap,host,nethogs 第十六节课

    centos linux系统日常管理3  服务管理ntsysv,chkconfig,系统日志rsyslog,last ,lastb ,exec,xargs,dmesg,screen,nohup,cur ...

  6. centos6服务启动脚本及开机启动过程

    centos6服务启动脚本 centos6的服务启动脚本都放在/etc/rc.d/init.d/下,/etc/init.d/是/etc/rc.d/init.d/的软链接: centos6的服务启动脚本 ...

  7. 编写管理IP地址参数脚本(永久性)

    1.用各种命令取出/etc/passwd文件前5行的最后一个字母.(2种) 2.编写管理IP地址参数脚本(永久性) a.只能用sed命令完成 b.提示用户变量赋值(IP.子网掩码.网关.DNS等) c ...

  8. logstash服务启动脚本

    logstash服务启动脚本 最近在弄ELK,发现logstash没有sysv类型的服务启动脚本,于是按照网上一个老外提供的模板自己进行修改 #添加用户 useradd logstash -M -s ...

  9. SHELL编写NGINX服务控制脚本

    使用源码包安装的Nginx没办法使用"service nginx start"或"/etc/init.d/nginx start"进行操作和控制,所以写了以下的 ...

随机推荐

  1. designated initializer和secondary initializer是什么?

    仅在此简单记录概念,方便以后回顾... ===================================== designated initializer是指定初始化方法,提供所有参数: sec ...

  2. 设置UITextField的placeholder的颜色

    [textField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"];

  3. 快速搭建PHP开发环境(PhpStorm+EasyPHP)

    写在开头,何为PHP(拍黄片)? P HP是一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用(维基百科). 从上我们得出,何为PHP? 1.开源脚本语言. 2.用于网络开发可嵌入 ...

  4. 找到个好的讲PYTHON FILE IO的文档,收藏

    现在我感觉快入门了哈, 这两天,可以用PYTHON写一点自己想要实现的东东了. 但文件,IO,编码,邮件,始终有点续不完全. 这个文档,我看行.. http://www.dabeaz.com/pyth ...

  5. 【BZOJ 3122】 [Sdoi2013]随机数生成器 (BSGS)

    3122: [Sdoi2013]随机数生成器 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 1442  Solved: 552 Description ...

  6. ANDROID_MARS学习笔记_S03_002_设置可见性及扫描蓝牙设备

    一.代码 1.xml(1)AndroidManifest.xml <uses-permission android:name="android.permission.BLUETOOTH ...

  7. 如何让windows版Safari支持H5 audio/video?

    今天在windows版Safari上看效果的时候惊奇地发现它竟然不支持HTML5的audio/video, 这样的话就无法复现不少ios上出现的问题. 在同事提醒下, 发现Safari HTML5 A ...

  8. Programming Concepts

    Attributes Attributes provide a powerful method of associating metadata, or declarative information, ...

  9. Oracle正则表达式

       Oracle正则表达式 正则表达式具有强大.便捷.高效的文本处理功能.能够添加.删除.分析.叠加.插入和修整各种类型的文本和数据.Oracle从10g开始支持正则表达式. 下面通过一些例子来说明 ...

  10. C++ Prime:const的引用

    可以把引用绑定到const对象上,就像绑定到其他对象上一样,我们称之为对常量的引用.与普通引用不同的是,对常量的引用不能被用作修改它所绑定的对象: ; const int &r1 = ci; ...