shell脚本之nginx自动化脚本
这个脚本,可以满足nginx开启,停止和重启的操作
#!/bin/bash . /etc/init.d/functions function usage() { echo $"usage:$0 {start|stop|restart}" exit 1 } function start() { /usr/local/nginx/sbin/nginx sleep 1 if [ `netstat -antlpe | grep nginx | wc -l` -ge 0 ];then action "nginx is started." /bin/true else action "nginx is started." /bin/false fi } function stop() { killall nginx &>/dev/null sleep 1 if [ `netstat -antlpe | grep nginx | wc -l` -eq 0 ];then action "nginx is stopped." /bin/true else action "nginx is stopped." /bin/false fi } function main() { if [ $# -ne 1 ];then usage $0 fi case $1 in start) start ;; stop) stop ;; restart) stop start ;; *) usage $0 ;; esac } main $*
运行试试
1.停止nginx
2.开启nginx
3.重启nginx
ok~
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接
相关推荐
-
Docker创建一个Nginx服务器的方法步骤
运行环境: MAC Docker 版本: Docker version 17.12.0-ce, build c97c6d6 一.启动Nginx 服务器 启动Nginx 服务器,并进入模拟终端 docker run -p 8080:80 --name nginx_web -it nginx /bin/bash 二.了解Nginx 镜像的配置文件位置 日志文件位置:/var/log/nginx 配置文件位置: /etc/nginx 资源存放的位置: /usr/share/nginx/html 上面的
-
Nginx代理时header头中带"_"信息丢失问题的解决
前言 开发网关项目时,在请求时往请求头header中放入了签名sign_key信息,在接收请求时再从header中拿出,在本地调试时是可以的,但上线之后通过Nginx代理之后发现拿不到. location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_s
-
Nginx跨域设置Access-Control-Allow-Origin无效的解决办法
nginx 版本 1.11.3 使用大家说的以下配置,验证无效,跨域问题仍然存在 add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Methods' 'GET,POST'; 使用以下配置,生效. if ($request_method = 'OPTIONS') { add_heade
-
浅谈docker运行nginx为什么要使用daemon off
很开心啊,遇到这个问题,就要讲讲docker容器的进程原理了,基本上了解过docker的人都清楚docker的几个隔离方式,那么进程同样是进行隔离. 问题 1.docker容器跑着为啥会挂掉? docker 容器默认会把容器内部第一个进程,也就是pid=1的程序作为docker容器是否正在运行的依据,如果docker 容器pid挂了,那么docker容器便会直接退出. 2.docker run的时候把command最为容器内部命令,如果你使用nginx,那么nginx程序将后台运行,这个时候ng
-
nginx配置教程之add_header的坑详解
前言 add_header 是 headers 模块中定义的一个指令,顾名思义就是用来添加 http 响应头的.但请注意他只是「添加」而已,并不是重写.所以如果已经存在某个头,再使用 add_header 就会出问题.而且在低版本的 nginx 中 add_header 还不支持在错误页面中使用. 这是一个坑比较多的指令.它的处理阶段比 location 处理晚,虽然可以写在 location 中,但如果 rewrite 别的 location,那么上一个 location 中尚未处理的 add
-
nginx上部署react项目的实例方法
测试项目:react-demo 克隆你的react-demo项目到服务器上(默认使用Github管理我们的项目) 如果需要,请安装项目环境,比如:node.js,yarn等 进入项目目录,执行npm run build,开始构建项目 构建成功之后,会生成一个dist文件夹(取决于你的项目配置),这个文件夹里的静态文件,就是我们的项目的访问文件了, 配置Nginx,Linux服务器是进入到:/etc/nginx/sites-enabled,然后以管理员身份,新建一个你的react项目的配置文件,比
-
docker完整配置nginx+php+mysql的方法步骤
首先了解一个方法: 使用docker exec进入Docker容器 docker在1.3.X版本之后还提供了一个新的命令exec用于进入容器,这种方式相对更简单一些,下面我们来看一下该命令的使用: sudo docker exec --help 接下来我们使用该命令进入一个已经在运行的容器 $ sudo docker ps $ sudo docker exec -it 775c7c9ee1e1 /bin/bash 一. 配置nginx 查找Docker Hub上的 nginx 镜像 runoob
-
借用nginx.vim工具进行语法高亮和格式化配置nginx.conf文件
我用的tengine,安装目录是/usr/local/tengine. 1.下载nginx.vim https://www.vim.org/scripts/script.php?script_id=1886 2.将nginx.vim上传至 ~/.vim/syntax/,并在~/.vim/filetype.vim的文件中新增如下内容: au BufRead,BufNewFile /etc/nginx/*,/usr/local/nginx/conf/* if &ft == '' | setfilet
-
nginx代理服务器配置双向证书验证的方法
生成证书链 用脚本生成一个根证书, 一个中间证书(intermediate), 三个客户端证书. 中间证书的域名为 localhost. #!/bin/bash -x set -e for C in `echo root-ca intermediate`; do mkdir $C cd $C mkdir certs crl newcerts private cd .. echo 1000 > $C/serial touch $C/index.txt $C/index.txt.attr echo
-
nginx proxy_cache批量清除缓存的脚本介绍
前言:之前使用官方的nginx proxy_cache作为CDN静态缓存发现该模块清理缓存是一个大问题,只能一条一条url的清除,为此写了一个批量清除缓存的脚本 主要功能包括: 1.按文件类型清理 2.按具体的文件名清理 3.按网站目录清理 下面是bash shell脚本代码,之前网上也好好多类似的脚本但是感觉都不太好还容易误导人犯错误 #!/bin/bash #Email:hello_linux@aliyun.com #Auto Clean Nginx Proxy_Cache Shell Sc
随机推荐
- AngularJS的$location使用方法详解
- 使用XMLHTTP发送超长XML表单数据
- select * from sp_who的解决方案
- Jquery读取URL参数小例子
- 正则表达式基础教程与说明
- asp.net中rdlc 合并行的方法
- PHP 危险函数解释 分析
- win7下memCache的安装过程(具体操作步骤)
- Linux下安装IPython配置python开发环境教程
- python持久性管理pickle模块详细介绍
- jQuery使用attr()方法同时设置多个属性值用法实例
- 页面版文本框智能提示JS代码
- jQuery实现的网页左侧在线客服效果代码
- 批处理加密.bat
- jQuery绑定事件不执行但alert后可以正常执行
- 禁用backspace网页回退功能的实现代码
- CS 1.5 键盘基本操作快捷键
- python类参数self使用示例
- 经典配置 Vlan篇
- Vuejs中使用markdown服务器端渲染的示例