时间:2022-10-12 10:03:47 | 栏目:Shell | 点击:次
经常安装Nginx服务,有时候要安装的版本不同就很烦,然后写了一个可以自定义Nginx版本的脚本(嗯,在朋友的帮助下,哈哈)。
话不多少,内容如下:
#!/bin/bash #Nginx版本 ver=nginx-1.$2.$3 # 安装目录 in_dir="/app/$ver" #软件存放目录 dl_dir="/server" #最终运行目录 run_dir=/app/nginx if [ ! -d $in_dir ];then mkdir -p $in_dir fi if [ ! -d $dl_dir ];then mkdir $dl_dir fi ##安装nginx function nginx_install (){ yum -y install gcc gcc-c++ pcre-devel zlib-devel openssl-devel if [ $? -eq 0 ] then curl "http://nginx.org/download/$ver.tar.gz" -o $dl_dir/$ver.tar.gz && \ useradd -M -s /sbinlogin nginx && \ tar xf $dl_dir/$ver.tar.gz -C $dl_dir && \ cd $dl_dir/$ver ./configure --prefix=$in_dir --user=nginx --group=nginx && \ make && make install fi } function nginx_init (){ ln -s $in_dir $run_dir } function nginx_start (){ ps -ef |grep nginx |grep master if [ $? = 0 ];then echo "Nginx is Running." else if [ ! -e $run_dir/sbin/nginx ];then nginx_init fi $run_dir/sbin/nginx sleep 5 ps -ef |grep nginx |grep master if [ $? = 0 ];then echo "Nginx Start successfully." else echo "Nginx Failed to Start." fi fi } function nginx_stop (){ $run_dir/sbin/nginx -s quit sleep 5 ps -ef |grep nginx |grep master if [ $? != 0 ];then echo "Nginx Stop successfully." else echo "Nginx Failed to Stop." fi } function nginx_reload (){ $run_dir/sbin/nginx -s reload } main(){ nginx_install nginx_start } case $1 in install) nginx_install nginx_init nginx_start ;; start) nginx_start ;; stop) nginx_stop ;; restart) nginx_stop nginx_start ;; reload) nginx_reload ;; *) echo "使用方法" echo "$0 start|stop|restart|reload" echo "安装方法" echo "$0 install <版本号> <小版本号> 例如:$0 install 19 3 下载的就是1.19.3版本 " ;; esac #if [ $# = 0 ];then # echo "使用 $0 后面加上小版本号进行部署:例如 $0 19 3 下载的就是1.19.3版本" #else # echo "下载版本:1.$2.$3" # echo "安装目录:$in_dir" # echo "下载目录:$dl_dir" # echo "Nginx installation..." # nginx_install # if [ $? != 0 ];then ## echo "Ngins installation Failed." # else # nginx_init # nginx_start # fi #fi
这个脚本可以实现用户自己选择想要安装的Nginx版本
比如我想装一个nginx-1.16.1版本,可以这样做:
sh install_nginx.sh install 16 1
当然,如果你开始并不知道使用方法,直接执行了脚本,没关系,有提示:
[root@localhost ~]# sh install_nginx.sh 使用方法 install_nginx.sh start|stop|restart|reload 安装方法 install_nginx.sh install <版本号> <小版本号> 例如:install_nginx.sh install 19 3 下载的就是1.19.3版本
瞧,不光告诉了你怎么使用它安装服务,还可以直接运行脚本进行管理当你刚安装完成的时候默认是启动的,你可以使用脚本进行关闭或重启:
[root@localhost ~]# sh install_nginx.sh stop Nginx Stop successfully. [root@localhost ~]# sh install_nginx.sh reload
然后你可以修改配置后进行开启:
[root@localhost ~]# sh install_nginx.sh start root 4236 1 0 14:23 ? 00:00:00 nginx: master process /app/nginx/sbin/nginx Nginx Start successfully.
查看它的状态,看它是否在运行:
[root@localhost ~]# ss -utpln | grep nginx tcp LISTEN 0 128 *:80 *:* users:(("nginx",pid=4238,fd=6),("nginx",pid=4236,fd=6))
我们用浏览器来访问一下吧!
可以看到Nginx的欢迎页面,说明我们成功了!