一键部署nginx

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#!/bin/bash
systemctl stop firewalld && setenforce 0
#首先安装nginx的依赖环境
yum -y install gcc pcre-devel zlib-devel net-tools wget
#解压nginx的安装包
if [ ! -d "/root/nginx-1.16.1" ]; then
         wget http://nginx.org/download/nginx-1.16.1.tar.gz
         tar -zxf nginx-1.16.1.tar.gz
        echo "压缩包已解压"
else
        echo "此文件已存在"
        continue
fi
#进去文件开始检查环境 编译安装
if [ ! -d /usr/local/nginx ]; then
        cd /root/nginx-1.16.1 && ./configure && make && make install
else
        continue
fi
#判断是否nginx的端口被占用
pid_file="/usr/local/nginx/logs/nginx.pid"
if [ ! -e ${pid_file} ]; then
        echo "被占用的pid是:`cat ${pid_file}`"       
        kill `cat ${pid_file}`
        echo "服务被占用,已删掉"
else
        echo "服务没有被占用"
        continue
fi
 
nginx=/usr/local/nginx/sbin/nginx
#开始启动nginx
read -p "请输入你接下来要做的操作:" action
check(){
        netstat -anptu | grep nginx
        if [ $? -eq 0 ];then
                continue
        fi
}
case $action in
        start)
                netstat -anptu | grep nginx
                if [ $? -eq 0 ]; then
                        continue
                else
                        $nginx
                fi
        ;;
        stop)
                netstat -anptu | grep nginx
                if [ $? -eq 0 ]; then
                        echo "nginx-server is already running  nginx-server begin stop"
                        $nginx -s stop
                else
                        echo "nginx-server is not start"
                fi
        ;;
        reload)
                netstat -anptu | grep nginx
                if [ $? -eq 0 ]; then
                        echo "nginx-server is already running  nginx-server begin reload"
                        $nginx -s reload
                else
                        echo "nginx-server is not running now begin start nginx-server"
                        $nginx
                        $nginx -s reload
                fi
        ;;
        statue)
                check
        ;;
        *)
                echo "please enter{start|stop|reload|statue}"
        ;;
esac
ip=`/sbin/ifconfig -a|awk '{print $2}'|sed -n '2p'`
code=`curl -I -m 10 -o /dev/null -s -w %{http_code} http://${ip}`
if [ $code -eq 200 ]; then
        echo "nginx-server is ok"
else
        echo "nginx-server is not ok"
fi

shell脚本一键部署nginx的更多相关文章

  1. Shell脚本一键部署——源码编译安装MySQL及自动补全工具

    Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者 ...

  2. shell脚本一键安装nginx

    依赖包安装包放在一起, 直接执行这个脚本就行. #!/bin/bash #--------------------------------------------------------------- ...

  3. shell脚本一键部署——Redis(直接复制执行)亲测100% 有效

    首先所需软件包拖进目录,然后编辑一个脚本,复制一下脚本,source执行一下即可 #!/bin/bash echo -e "\033[31m =====正在验证当前为仅主机还是NAT模式== ...

  4. shell脚本一键部署lvs+keepalived

    环境 两个调度器dr1.dr2,两台真实机rs1.rs2.两台真实机安装httpd,并编辑主页内容用于验证 vip="192.168.132.250"dr1="192.1 ...

  5. Tomcat集群 Nginx负载均衡 shell脚本实时监控Nginx

    第一步,安装Tomcat 系统环境:Centos7 第1步:下载tomcat安装包 tomcat官网:https://tomcat.apache.org/ 第2步:安装包上传至linux中 第3步:下 ...

  6. 一键部署nginx 服务

    一键部署nginx服务 老样子安装包都拖到opt里! 脚本如下 source 执行! #!/bin/bash #======编译安装nginx服务====== #安装所需开发包和编译环境.编译器 yu ...

  7. Centos 6.4上面用Shell脚本一键安装vsftpd

    Centos 6.4上面用Shell脚本一键安装vsftpd install.sh #!/bin/bash if [ `uname -m` == "x86_64" ];then m ...

  8. Centos 6.4上面用Shell脚本一键安装mysql 5.6.15

    Centos 6.4上面用Shell脚本一键安装mysql 5.6.15  #!/bin/bash if [ `uname -m` == "x86_64" ];then machi ...

  9. shell脚本一键同步集群时间

    shell脚本一键同步集群时间 弋嘤捕大 椿澄辄 ψ壤 茇徜燕 ㄢ交涔沔 阚龇棚绍 テ趼蜱棣 灵打了个寒颤也没有去甩脱愣是拖着 喇吉辔 秋北酏崖 琮淄脸酷 茇呶剑 莲夤罱 陕遇骸淫  ...

随机推荐

  1. 性能优化(1+N,list与iterator,缓存,事务)

    1.注意session.clear()的运用,尤其是不断分页循环的时候 A 在一个大集合中进行遍历,取出其中含有敏感字的对象 B 另一种形式的内存泄露. 2.1+N问题 问题描述:如@ManyToOn ...

  2. Linux下获得本机IP(非127.0.0.1)

    在Linux下用InetAddress.getLocalHost()方法获取本机IP地址,得到的结果总是:127.0.1.1.原来这个是etc/hosts文件中的配置,并非网卡的IP地址. 可用代码如 ...

  3. HTML的<form>表单标签

    表单 HTML 表单用于搜集不同类型的用户输入. ㈠Form标签 ⑴form标签简介 在HTML中,如果创建一个表单,就把各种表单标签放在<form></form>标签内部.我 ...

  4. 15、Qt 样式表

    Qt的样式表类似HTML的层叠式样式表CSS,可以为一个独立的子部件.整个窗口.整个应用程序指定一种外表样式. 样式表功能:1.优化外观.2.实现某些动作,如鼠标在图片上,图片切换. 格式:QWidg ...

  5. Spring CommonsMultipartResolver 上传文件

    转:http://yanglei008.iteye.com/blog/246920 ...Controller...{ // 创建一个通用的多部分解析器 CommonsMultipartResolve ...

  6. 【PKUSC2019】树染色【线段树合并】【树形DP】

    Description 给出一棵n个点的树,现在有m种颜色,要给每个节点染色,相邻节点不能同色. 另外有k条限制,形如x号点不能为颜色y 同一节点有可能有多条限制. 求方案数对998244353取模的 ...

  7. OCWA提高组模拟赛一 Solution

    Problem A RecMin 给出一个$n \times m$的矩阵,其中$1 \leq n,m \leq 3\ times 10^3$ 给出整数$a,b$,求出在矩阵中所有$a\ times b ...

  8. python3基础:基本语句

    http://www.cnblogs.com/qq21270/p/4591318.html  字符串.文本文件 http://www.cnblogs.com/qq21270/p/7872824.htm ...

  9. sublime text3 最新 license注册码分享 2018

    —– BEGIN LICENSE —– Die Socialisten GmbH 10 User License EA7E-800613 51311422 E45F49ED 3F0ADE0C E5B8 ...

  10. 如何运行一个分布式的Maven项目

    本人也属于一个新手小白,之前在公司运行的项目也都不涉及到maven...但是前两天运行一个maven项目的时候发现,第一次接触这个还是蛮让我措手不及的.在这里整理下自己当时走的弯路,或者遇到的一些问题 ...