Shell脚本一键安装Nginx服务自定义Nginx版本
经常安装Nginx服务,有时候要安装的版本不同就很烦,然后写了一个可以自定义Nginx版本的脚本(嗯,在朋友的帮助下,哈哈)。
【Shell脚本一键安装Nginx服务自定义Nginx版本】话不多少,内容如下:
#!/bin/bash#Nginx版本ver=nginx-1.$2.$3# 安装目录in_dir="/app/$ver"#软件存放目录dl_dir="/server"#最终运行目录run_dir=/app/nginxif [ ! -d $in_dir ]; thenmkdir -p $in_dirfiif [ ! -d $dl_dir ]; thenmkdir $dl_dirfi##安装nginxfunction nginx_install (){yum -y install gcc gcc-c++ pcre-devel zlib-devel openssl-devel if [ $? -eq 0 ]thencurl"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 masterif [ $? = 0]; thenecho "Nginx is Running."elseif [ ! -e $run_dir/sbin/nginx ]; thennginx_initfi $run_dir/sbin/nginxsleep 5ps -ef |grep nginx |grep masterif [ $? = 0]; thenecho "Nginx Start successfully."elseecho "Nginx Failed to Start." fifi}function nginx_stop (){ $run_dir/sbin/nginx -s quit sleep 5ps -ef |grep nginx |grep masterif [ $? != 0]; thenecho "Nginx Stop successfully."elseecho "Nginx Failed to Stop." fi}function nginx_reload (){ $run_dir/sbin/nginx -s reload }main(){nginx_installnginx_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 stopNginx Stop successfully.[root@localhost ~]# sh install_nginx.sh reload
然后你可以修改配置后进行开启:
[root@localhost ~]# sh install_nginx.sh startroot423610 14:23 ?00:00:00 nginx: master process /app/nginx/sbin/nginxNginx Start successfully.
查看它的状态,看它是否在运行:
[root@localhost ~]# ss -utpln | grep nginxtcpLISTEN0128*:80*:*users:(("nginx",pid=4238,fd=6),("nginx",pid=4236,fd=6))
我们用浏览器来访问一下吧!
文章图片
可以看到Nginx的欢迎页面,说明我们成功了!
以上就是Shell脚本一键安装Nginx服务自定义Nginx版本的详细内容,更多关于Shell脚本安装Nginx服务自定义Nginx的资料请关注脚本之家其它相关文章!
推荐阅读
- 《前端运维》一、Linux基础--04Shell变量
- Android安卓进阶之——相比|Android安卓进阶之——相比 Groovy 脚本, KTS 性能到底怎么样()
- web安全评估|分享一个批量处理防火墙规则的脚本
- #|性能测试_Day_05(jmeter函数助手、json断言、beanshell、参数化)
- unity|Unity编辑器扩展(基于ScriptableWizard批量为预设添加继承于MonoBehaviour的脚本)
- 教你bat脚本一键配置java开发环境
- Linux开机自启应用&开机执行脚本&监听端口应用挂掉了执行启动脚本
- Project 1—UNIX Shell
- Shell 高阶开发实战
- Oracle ADG 自动切换脚本分享