CentOS 7.4 源码安装 nginx 1.14

  • 操作系统:CentOS 7.4
  • nginx 版本:nginx-1.14.1

当前 Stable version 为 nginx-1.14.1 参考

与JRE、Tomcat不同,nginx并非解压即可,还需要编译、安装。具体步骤如下:

一、准备环境

环境准备不完全会后面执行 ./configure 对应报错,本人尝试了一下,比如缺少 3. zlib 函式库 会报错

./configure: error: the HTTP gzip module requires the zlib library.
You can either disable the module by using --without-http_gzip_module
option, or install the zlib library into the system, or build the zlib library
statically from the source with nginx by using --with-zlib=<path> option.
  1. gcc(GNU编译器套件)

     [root[@xxxxxxxx](https://my.oschina.net/u/1036001) ~]# rpm -q gcc
     gcc-4.8.5-16.el7.x86_64
    

    若没有输出,则安装

     [root[@xxxxxxxx](https://my.oschina.net/u/1036001) ~]# yum install -y gcc
    
  2. PCRE(Perl Compatible Regular Expressions) Perl库

     [root[@xxxxxxxx](https://my.oschina.net/u/1036001) ~]# rpm -qa |grep pcre
     pcre-8.32-17.el7.x86_64
     pcre-devel-8.32-17.el7.x86_64
    

    缺少哪个要对应的安装,比如缺少pcre-devel-8.32-17.el7.x86_64,则执行

     [root[@xxxxxxxx](https://my.oschina.net/u/1036001) ~]# yum install -y pcre-devel
    

    如果两个都缺少,则执行

     [root[@xxxxxxxx](https://my.oschina.net/u/1036001) ~]# yum install -y pcre pcre-devel
    

    下面几个依此类推

  3. zlib 函式库

     [root@xxxxxxxx ~]# rpm -qa |grep zlib
     zlib-devel-1.2.7-17.el7.x86_64
     zlib-1.2.7-17.el7.x86_64
    

    缺少哪个要对应的安装

     [root@xxxxxxxx ~]# yum install -y zlib zlib-devel
    
  4. openssl

     [root@xxxxxxxx ~]# rpm -qa |grep openssl
     openssl-libs-1.0.2k-12.el7.x86_64
     openssl-devel-1.0.2k-12.el7.x86_64
     openssl-1.0.2k-12.el7.x86_64
    

    缺少哪个要对应的安装

     [root@xxxxxxxx ~]# yum install -y openssl openssl-devel 
    

二、解压安装

  1. 解压

    在nginx-1.14.1.tar.gz所在目录,执行解压命令,解压目录与安装目录是不同的,不用介意解压位置

     [root@xxxxxxxx ~]# tar -zxvf nginx-1.14.1.tar.gz
    
  2. ./configure生成Makefile

    如果不加 --with-http_stub_status_module 也是可以的,但配置ssl时会出错,需要重新处理

     [root@xxxxxxxx ~]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module
     checking for OS
      + Linux 3.10.0-693.2.2.el7.x86_64 x86_64
     checking for C compiler ... found
      + using GNU C compiler
      + gcc version: 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) 
     checking for gcc -pipe switch ... found
     checking for -Wl,-E switch ... found		Configuration summary
     ----------------
     此处省略一百多个checking for...
     ----------------
     checking for PCRE JIT support ... found
     checking for zlib library ... found
     creating objs/Makefile
    
     Configuration summary
       + using system PCRE library
       + OpenSSL library is not used
       + using system zlib library
    
       nginx path prefix: "/usr/local/nginx"
       nginx binary file: "/usr/local/nginx/sbin/nginx"
       nginx modules path: "/usr/local/nginx/modules"
       nginx configuration prefix: "/usr/local/nginx/conf"
       nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
       nginx pid file: "/usr/local/nginx/logs/nginx.pid"
       nginx error log file: "/usr/local/nginx/logs/error.log"
       nginx http access log file: "/usr/local/nginx/logs/access.log"
       nginx http client request body temporary files: "client_body_temp"
       nginx http proxy temporary files: "proxy_temp"
       nginx http fastcgi temporary files: "fastcgi_temp"
       nginx http uwsgi temporary files: "uwsgi_temp"
       nginx http scgi temporary files: "scgi_temp"
    

    如果结尾出现 ./configure: error: 要排查解决对应的原因,然后重新执行 ./configure --prefix=/usr/local/nginx

  3. make && make install

     [root@xxxxxxxx nginx-1.14.1]# make && make install
    

    安装结束后就可以看到 /usr/local/nginx 目录,执行/usr/local/nginx/sbin/nginx启动,就可以访问了。

     [root@xxxxxxxx nginx]# /usr/local/nginx/sbin/nginx
    

安装成功

后续的配置在下一篇博客里介绍

猜你喜欢

转载自my.oschina.net/u/3251146/blog/2961178
今日推荐