源码安装nginx以及平滑升级
 
                                                                                                                                            作者:尹正杰
 
版权声明:原创作品,谢绝转载!否则将追究法律责任。
 
 
 
欢迎加入:高级运维工程师之路 598432640
这个博客不方便上传软件包,我给大家把软件包放到百度云链接:http://pan.baidu.com/s/1eS3bn4u 密码:04a1
 
操作平台:
 
 
1.创建ngxin用户,(用于管理nginx服务,您也可以随意指定的哟~)

[root@yinzhengjie ~]#useradd -s /sbin/nologin nginx

2.安装基础环境
[root@yinzhengjie ~]#yum -y install gcc pcre-devel openssl-devel zlib-devel
3.安装nginx
[root@yinzhengjie ~]#tar -zxvf nginx-1.3.10.tar.gz
[root@yinzhengjie ~]#cd nginx-1.3.10
[root@yinzhengjie ~]#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module
[root@yinzhengjie ~]#make -j 4 && make install
4.启动Nginx
[root@yinzhengjie ~]#/usr/local/nginx/sbin/nginx              #启动nginx服务
[root@yinzhengjie ~]#/usr/local/nginx/sbin/nginx -s stop         #停止nginx服务
[root@yinzhengjie ~]#ss   -untalp | grep 80 #cenos7只能用ss命令查端口
 

启动服务成功之后,可以通过curl 127.0.0.1验证服务是否启动成功:
 

如果是其他机器要访问这个服务器的建议关闭防火墙策略和selinux,如果生产环境中开启iptables的话需要写规则!当然selinux也一样!
5.创建nginx启动脚本
[root@yinzhengjie ~]#cat nginx
#!/bin/bash
#chkconfig: 2345 89 89
#Description:This is Nginx web script"
PID="/usr/local/nginx/logs/nginx.pid"
start(){
        /usr/local/nginx/sbin/nginx
        if [ $? -eq 0 ];then
                echo -en "Starting Nginx...\t\t\t["
                echo -en "\033[32;34mOK\033[0m"
                echo "]"
        else
                echo "Starting Nginx Error"
        fi
}
stop(){
        /usr/local/nginx/sbin/nginx -s stop
        if [ $? -eq 0 ];then
                echo -en "Stop Nginx...\t\t\t["
                echo -en "\033[32;34mOK\033[0m"
                echo "]"
        else
                echo "Stop Nginx Error"
        fi
}
status(){
        if [ -f $PID ];then
                ID=$(cat $PID)
                echo "Ngix($ID) is running..."
        else
                echo "Nginx is stop"
        fi
}
case $1 in
start)
        start;;
stop)
        stop;;
restart)
        stop
        start
        ;;
status)
        status;;
*)
        echo "Usage:$0 {start|stop|restart|status}"
esac
[root@yinzhengjie ~]#
将这个脚本加执行权限放到/etc/init.d/下就可以用以下方式启动nginx了
  
                                                         平滑升级
1.上传新版本nginx到服务器上                                                                 
 

2./usr/local/nginx/sbin/nginx -v #查看当前Nginx版本
 
3.开始平滑升级
[root@yinzhengjie ~]#tar -xzf nginx-1.9.15.tar.gz
[root@yinzhengjie ~]#cd nginx-1.9.15
[root@yinzhengjie ~]#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module
[root@yinzhengjie ~]#make   #执行该命令后会生成objs/nginx目录
[root@yinzhengjie ~]#mv /usr/local/nginx/sbin/nginx /var/tmp/nginxold  #这个步骤是为了备份之前的版本,如果升级失败的话可以回退的,切记要做好备份啊!
[root@yinzhengjie ~]#cp objs/nginx /usr/local/nginx/sbin/ #这个步骤是将新版本的nginx启动程序拷贝过来
[root@yinzhengjie ~]#make upgrade    #升级
 

[root@yinzhengjie ~]#/usr/local/nginx/sbin/nginx -v    #查看当前版本已经升级成功了
 

源码安装nginx以及平滑升级的更多相关文章

  1. Linux之源码安装nginx,并按照作业一描述的那样去测试使用

    作业五:源码安装nginx,并按照作业一描述的那样去测试使用 [root@localhost nginx]# yum install gcc-* glibc-* openssl openssl-dev ...

  2. 源码安装Nginx以及用systemctl管理

    一.源码安装Nginx: 先安装gcc编译器(安装过的可以忽略) [root@localhost ~]# yum -y install gcc gcc-c++ wget 进入src目录 [root@l ...

  3. linux源码安装nginx

    任务目标:源码安装nginx,作为web服务修改配置文件,让配置生效,验证配置 首先要去官网nginx.org下载一个tar包: tar xvf 解包 进入到解包出来的目录,对configure进行配 ...

  4. 工作笔记-- 源码安装nginx

    源码安装nginx 1.安装nginx的依赖包 [root@localhost ~]# yum -y install gcc gcc-c++ openssl openssl-devel pcre pc ...

  5. 源码安装nginx 方法二

    yum 仓库不能用大写字母 [root@oldboy conf.d]# gzip * 压缩当前目录下的所有文件 gzip ./* gzip . gzip./ # 关闭防火墙和selinux [root ...

  6. 源码安装nginx env

    源码安装nginx 1. For ubuntu:18.04 apt -y install build-essential libtool libpcre3 libpcre3-dev zlib1g-de ...

  7. nginx使用-1(源码安装nginx)

    Nginx概述 Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Ramb ...

  8. redhat 5下源码安装nginx服务

    首先确保机器中已安装 gcc c++,libtool等工具,保证可执行源码安装 A.为了确保能在 Nginx 中使用正则表达式进行更灵活的配置,安装之前需要确定系统是否安装有 PCRE(Perl Co ...

  9. centos7 中源码安装nginx

    使用nginx有一段时间了,还是有很多东西不懂的,在这里做一下自己学习过程中的一些整理,能使自己得到提升. 1.环境:centos7 1511  最小化安装 2.下载nginx,可以在系统中下载,也可 ...

随机推荐

  1. Kafka 0.10.0

    2.1 Producer API We encourage all new development to use the new Java producer. This client is produ ...

  2. 【转】简单的 Laravel 5 REST API

    Introduction Almost all successful internet based companies have APIs. API is an acronym for Applica ...

  3. SecureCRT SSH VMware Ubuntu

    Ubuntu 10.4 装完后网络OK. NAT模式下, 可以上网. 宿主机和客户机可以彼此ping通. 主要是检查SSH服务, 和防火墙是否关闭(UBUNTU 默认没有安装SSH, 默认启动了防火墙 ...

  4. freebsd上安装nginx+php记录

    参考文章 https://wiki.freebsdchina.org/faq/ports http://www.vpsee.com/2014/04/install-nginx-php-apc-mysq ...

  5. php获得文件夹下所有文件的递归算法

    function my_scandir($dir){ $files=array(); if(is_dir($dir)) { if($handle=opendir($dir)) { while(($fi ...

  6. 通过全局设置过滤器,就能让所有窗口都可移动,而不是都要继承指定QDialog

    #include "appinit.h" #include <QMouseEvent> #include <QApplication> #include & ...

  7. 自己写的一个DirectUI库,基础控件基本都已实现

    http://download.csdn.net/detail/pcradio/9254881 http://blog.csdn.net/pcradio

  8. (读书笔记)Asp.net Mvc 与WebForm 混合开发

    根据项目实际需求,有时候会想在项目中实现Asp.net Mvc与Webform 混合开发,比如前台框架用MVC,后台框架用WebForm.其实要是实现也很简单,如下: (1)在MVC 中使用Webfo ...

  9. JMeter学习-011-JMeter 后置处理器实例之 - 正则表达式提取器(三)多参数获取进阶引用篇

    前两篇文章分表讲述了 后置处理器 - 正则表达式提取器概述及简单实例.多参数获取,相应博文敬请参阅 简单实例.多参数获取. 此文主要讲述如何引用正则表达式提取器获取的数据信息.其实,正则表达式提取器获 ...

  10. C#中value是什么意思

    value是c#中的“属性”例如c#某个类中有一个成员变量(字段),为了安全性,外部如果要访问它,必须通过“属性”来访问:private int _id;//这是一个成员变量,private表示是私有 ...