• Centos7 编译安装Nginx


    1. 升级系统所有软件

      yum -y update
      
    2. 安装Nginx编译所需要的依赖项

      yum -y install gcc gcc-c++ make zlib-devel pcre-devel openssl-devel
      
    3. 下载Nginx源码

      #方式一:
      wget http://nginx.org/download/nginx-1.9.15.tar.gz
      #方式二:
      git clone git@github.com:nginx/nginx.git
      
    4. 解压 并 进入解压后的文件夹

      tar -xzf nginx-1.9.15.tar.gz
      cd nginx-1.9.15
      
    5. 选择安装的模块

      ./configure 
      --user=nginx 
      --group=nginx 
      --prefix=/etc/nginx 
      --sbin-path=/usr/sbin/nginx 
      --conf-path=/etc/nginx/nginx.conf 
      --pid-path=/var/run/nginx.pid 
      --lock-path=/var/run/nginx.lock 
      --error-log-path=/var/log/nginx/error.log 
      --http-log-path=/var/log/nginx/access.log 
      --with-http_gzip_static_module 
      --with-http_stub_status_module 
      --with-http_ssl_module 
      --with-pcre 
      --with-file-aio 
      --with-http_realip_module 
      --without-http_scgi_module 
      --without-http_uwsgi_module 
      --without-http_fastcgi_module
      
    6. 编译并安装

      make -j 4 && make install
      
    7. 在init.d文件夹中创建nginx启动文件

      cd /etc/init.d
      
      vim nginx
      
      #添加以下内容
      #!/bin/sh
      #
      # nginx - this script starts and stops the nginx daemin
      #
      # chkconfig:   - 85 15
      # description:  Nginx is an HTTP(S) server, HTTP(S) reverse 
      #               proxy and IMAP/POP3 proxy server
      # processname: nginx
      # config:      /etc/nginx/nginx.conf
      # pidfile:     /var/run/nginx.pid
      # user:        nginx
      
      # Source function library.
      . /etc/rc.d/init.d/functions
      
      # Source networking configuration.
      . /etc/sysconfig/network
      
      # Check that networking is up.
      [ "$NETWORKING" = "no" ] && exit 0
      
      nginx="/usr/sbin/nginx"
      prog=$(basename $nginx)
      
      NGINX_CONF_FILE="/etc/nginx/nginx.conf"
      
      lockfile=/var/run/nginx.lock
      
      start() {
          [ -x $nginx ] || exit 5
          [ -f $NGINX_CONF_FILE ] || exit 6
          echo -n $"Starting $prog: "
          daemon $nginx -c $NGINX_CONF_FILE
          retval=$?
          echo
          [ $retval -eq 0 ] && touch $lockfile
          return $retval
      }
      
      stop() {
          echo -n $"Stopping $prog: "
          killproc $prog -QUIT
          retval=$?
          echo
          [ $retval -eq 0 ] && rm -f $lockfile
          return $retval
      }
      
      restart() {
          configtest || return $?
          stop
          start
      }
      
      reload() {
          configtest || return $?
          echo -n $"Reloading $prog: "
          killproc $nginx -HUP
          RETVAL=$?
          echo
      }
      
      force_reload() {
          restart
      }
      
      configtest() {
        $nginx -t -c $NGINX_CONF_FILE
      }
      
      rh_status() {
          status $prog
      }
      
      rh_status_q() {
          rh_status >/dev/null 2>&1
      }
      
      case "$1" in
          start)
              rh_status_q && exit 0
              $1
              ;;
          stop)
              rh_status_q || exit 0
              $1
              ;;
          restart|configtest)
              $1
              ;;
          reload)
              rh_status_q || exit 7
              $1
              ;;
          force-reload)
              force_reload
              ;;
          status)
              rh_status
              ;;
          condrestart|try-restart)
              rh_status_q || exit 0
                  ;;
          *)
              echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
              exit 2
      esac
      
    8. 将上面写的脚本添加到系统服务中(关于chkconfig请参考:Linux下chkconfig命令详解

    chkconfig --add nginx
    chkconfig --level 345 nginx on
    
    # 给脚本执行的权限
    chmod +x nginx
    
    1. Linux 防火墙开放80端口

      firewall-cmd --permanent --add-port=80/tcp --zone=public
      
    2. Nginx 开启关闭命令

      service nginx start/restart/stop
      

    注:本文转自译:Centos7 编译安装Nginx 教程,如需转载请注明出处,https://www.cnblogs.com/zhuchenglin/p/11773815.html。

  • 相关阅读:
    SQL SERVER 2005生成带数据的脚本文件 [work around]
    VB.NET窗体关闭事件
    Code::Blocks The open source, cross platform, free C++ IDE.
    VB Twips And Pixels 缇和像素
    JQuery 鼠标点击其它地方隐藏层
    Asp.net 基于Form的权限方法备忘
    JQuery Highcharts图表控件多样式显示多组数据
    ASP.NET中动态获取数据使用Highcharts图表控件
    使用windows服务和.NET FileSystemWatcher对象来监控磁盘文件目录的改变
    【JQuery插件】Select选择框的华丽变身
  • 原文地址:https://www.cnblogs.com/zhuchenglin/p/11773815.html
Copyright © 2020-2023  润新知