美文网首页程序员
Nginx安装详细流程

Nginx安装详细流程

作者: 您好简书 | 来源:发表于2019-07-28 02:29 被阅读0次
nginx安装环境

nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境。

gcc

安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum install gcc-c++

会出现# yum 安装软件时出现 is this ok [y/d/n]

y下载安装

d只下载不安装

n不安装

PCRE

PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。
yum install -y pcre pcre-devel
注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。

zlib

zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。
yum install -y zlib zlib-devel

openssl

OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。
yum install -y openssl openssl-devel

[root@Nigux ~]# yum install gcc-c++
已加载插件:fastestmirror, langpacks
/var/run/yum.pid 已被锁定,PID 为 9006 的另一个程序正在运行。
Another app is currently holding the yum lock; waiting for it to exit...
  另一个应用程序是:PackageKit
    内存: 51 M RSS (396 MB VSZ)
    已启动: Sun Jul 28 01:05:14 2019 - 00:19之前
    状态  :睡眠中,进程ID:9006
Another app is currently holding the yum lock; waiting for it to exit...
  另一个应用程序是:PackageKit
    内存: 51 M RSS (396 MB VSZ)
    已启动: Sun Jul 28 01:05:14 2019 - 00:21之前
    状态  :睡眠中,进程ID:9006
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
base                                                            | 3.6 kB  00:00:00     
extras                                                          | 3.4 kB  00:00:00     
updates                                                         | 3.4 kB  00:00:00     
正在解决依赖关系
--> 正在检查事务
---> 软件包 gcc-c++.x86_64.0.4.8.5-36.el7_6.2 将被 安装
--> 正在处理依赖关系 libstdc++-devel = 4.8.5-36.el7_6.2,它被软件包 gcc-c++-4.8.5-36.el7_6.2.x86_64 需要
--> 正在处理依赖关系 libstdc++ = 4.8.5-36.el7_6.2,它被软件包 gcc-c++-4.8.5-36.el7_6.2.x86_64 需要
--> 正在处理依赖关系 gcc = 4.8.5-36.el7_6.2,它被软件包 gcc-c++-4.8.5-36.el7_6.2.x86_64 需要
--> 正在检查事务
---> 软件包 gcc.x86_64.0.4.8.5-36.el7_6.2 将被 安装
--> 正在处理依赖关系 libgomp = 4.8.5-36.el7_6.2,它被软件包 gcc-4.8.5-36.el7_6.2.x86_64 需要
--> 正在处理依赖关系 cpp = 4.8.5-36.el7_6.2,它被软件包 gcc-4.8.5-36.el7_6.2.x86_64 需要
--> 正在处理依赖关系 libgcc >= 4.8.5-36.el7_6.2,它被软件包 gcc-4.8.5-36.el7_6.2.x86_64 需要
--> 正在处理依赖关系 glibc-devel >= 2.2.90-12,它被软件包 gcc-4.8.5-36.el7_6.2.x86_64 需要
---> 软件包 libstdc++.x86_64.0.4.8.5-36.el7 将被 升级
---> 软件包 libstdc++.x86_64.0.4.8.5-36.el7_6.2 将被 更新
---> 软件包 libstdc++-devel.x86_64.0.4.8.5-36.el7_6.2 将被 安装
--> 正在检查事务
---> 软件包 cpp.x86_64.0.4.8.5-36.el7_6.2 将被 安装
---> 软件包 glibc-devel.x86_64.0.2.17-260.el7_6.6 将被 安装
--> 正在处理依赖关系 glibc-headers = 2.17-260.el7_6.6,它被软件包 glibc-devel-2.17-260.el7_6.6.x86_64 需要
--> 正在处理依赖关系 glibc = 2.17-260.el7_6.6,它被软件包 glibc-devel-2.17-260.el7_6.6.x86_64 需要
--> 正在处理依赖关系 glibc-headers,它被软件包 glibc-devel-2.17-260.el7_6.6.x86_64 需要
---> 软件包 libgcc.x86_64.0.4.8.5-36.el7 将被 升级
---> 软件包 libgcc.x86_64.0.4.8.5-36.el7_6.2 将被 更新
---> 软件包 libgomp.x86_64.0.4.8.5-36.el7 将被 升级
---> 软件包 libgomp.x86_64.0.4.8.5-36.el7_6.2 将被 更新
--> 正在检查事务
---> 软件包 glibc.x86_64.0.2.17-260.el7 将被 升级
--> 正在处理依赖关系 glibc = 2.17-260.el7,它被软件包 glibc-common-2.17-260.el7.x86_64 需要
---> 软件包 glibc.x86_64.0.2.17-260.el7_6.6 将被 更新
---> 软件包 glibc-headers.x86_64.0.2.17-260.el7_6.6 将被 安装
--> 正在处理依赖关系 kernel-headers >= 2.2.1,它被软件包 glibc-headers-2.17-260.el7_6.6.x86_64 需要
--> 正在处理依赖关系 kernel-headers,它被软件包 glibc-headers-2.17-260.el7_6.6.x86_64 需要
--> 正在检查事务
---> 软件包 glibc-common.x86_64.0.2.17-260.el7 将被 升级
---> 软件包 glibc-common.x86_64.0.2.17-260.el7_6.6 将被 更新
---> 软件包 kernel-headers.x86_64.0.3.10.0-957.21.3.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=======================================================================================
 Package                架构          版本                        源              大小
=======================================================================================
正在安装:
 gcc-c++                x86_64        4.8.5-36.el7_6.2            updates        7.2 M
为依赖而安装:
 cpp                    x86_64        4.8.5-36.el7_6.2            updates        5.9 M
 gcc                    x86_64        4.8.5-36.el7_6.2            updates         16 M
 glibc-devel            x86_64        2.17-260.el7_6.6            updates        1.1 M
 glibc-headers          x86_64        2.17-260.el7_6.6            updates        684 k
 kernel-headers         x86_64        3.10.0-957.21.3.el7         updates        8.0 M
 libstdc++-devel        x86_64        4.8.5-36.el7_6.2            updates        1.5 M
为依赖而更新:
 glibc                  x86_64        2.17-260.el7_6.6            updates        3.7 M
 glibc-common           x86_64        2.17-260.el7_6.6            updates         12 M
 libgcc                 x86_64        4.8.5-36.el7_6.2            updates        102 k
 libgomp                x86_64        4.8.5-36.el7_6.2            updates        158 k
 libstdc++              x86_64        4.8.5-36.el7_6.2            updates        305 k

事务概要
=======================================================================================
安装  1 软件包 (+6 依赖软件包)
升级           ( 5 依赖软件包)

总计:56 M
总下载量:41 M
Is this ok [y/d/N]: y
Downloading packages:
警告:/var/cache/yum/x86_64/7/updates/packages/cpp-4.8.5-36.el7_6.2.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
cpp-4.8.5-36.el7_6.2.x86_64.rpm 的公钥尚未安装
(1/7): cpp-4.8.5-36.el7_6.2.x86_64.rpm                          | 5.9 MB  00:00:04     
(2/7): gcc-c++-4.8.5-36.el7_6.2.x86_64.rpm                      | 7.2 MB  00:00:02     
(3/7): glibc-devel-2.17-260.el7_6.6.x86_64.rpm                  | 1.1 MB  00:00:00     
(4/7): glibc-headers-2.17-260.el7_6.6.x86_64.rpm                | 684 kB  00:00:00     
(5/7): gcc-4.8.5-36.el7_6.2.x86_64.rpm                          |  16 MB  00:00:08     
(6/7): libstdc++-devel-4.8.5-36.el7_6.2.x86_64.rpm              | 1.5 MB  00:00:00     
(7/7): kernel-headers-3.10.0-957.21.3.el7.x86_64.rpm            | 8.0 MB  00:00:02     
---------------------------------------------------------------------------------------
总计                                                      4.0 MB/s |  41 MB  00:10     
从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 检索密钥
导入 GPG key 0xF4A80EB5:
 用户ID     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 指纹       : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 软件包     : centos-release-7-6.1810.2.el7.centos.x86_64 (@anaconda)
 来自       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
是否继续?[y/N]:y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在更新    : libgcc-4.8.5-36.el7_6.2.x86_64                                    1/17 
  正在更新    : glibc-common-2.17-260.el7_6.6.x86_64                              2/17 
  正在更新    : glibc-2.17-260.el7_6.6.x86_64                                     3/17 
  正在更新    : libstdc++-4.8.5-36.el7_6.2.x86_64                                 4/17 
  正在安装    : libstdc++-devel-4.8.5-36.el7_6.2.x86_64                           5/17 
  正在更新    : libgomp-4.8.5-36.el7_6.2.x86_64                                   6/17 
  正在安装    : cpp-4.8.5-36.el7_6.2.x86_64                                       7/17 
  正在安装    : kernel-headers-3.10.0-957.21.3.el7.x86_64                         8/17 
  正在安装    : glibc-headers-2.17-260.el7_6.6.x86_64                             9/17 
  正在安装    : glibc-devel-2.17-260.el7_6.6.x86_64                              10/17 
  正在安装    : gcc-4.8.5-36.el7_6.2.x86_64                                      11/17 
  正在安装    : gcc-c++-4.8.5-36.el7_6.2.x86_64                                  12/17 
  清理        : libstdc++-4.8.5-36.el7.x86_64                                    13/17 
  清理        : libgomp-4.8.5-36.el7.x86_64                                      14/17 
  清理        : glibc-common-2.17-260.el7.x86_64                                 15/17 
  清理        : glibc-2.17-260.el7.x86_64                                        16/17 
  清理        : libgcc-4.8.5-36.el7.x86_64                                       17/17 
  验证中      : glibc-devel-2.17-260.el7_6.6.x86_64                               1/17 
  验证中      : libstdc++-devel-4.8.5-36.el7_6.2.x86_64                           2/17 
  验证中      : gcc-c++-4.8.5-36.el7_6.2.x86_64                                   3/17 
  验证中      : kernel-headers-3.10.0-957.21.3.el7.x86_64                         4/17 
  验证中      : libgcc-4.8.5-36.el7_6.2.x86_64                                    5/17 
  验证中      : libgomp-4.8.5-36.el7_6.2.x86_64                                   6/17 
  验证中      : glibc-2.17-260.el7_6.6.x86_64                                     7/17 
  验证中      : cpp-4.8.5-36.el7_6.2.x86_64                                       8/17 
  验证中      : gcc-4.8.5-36.el7_6.2.x86_64                                       9/17 
  验证中      : glibc-headers-2.17-260.el7_6.6.x86_64                            10/17 
  验证中      : glibc-common-2.17-260.el7_6.6.x86_64                             11/17 
  验证中      : libstdc++-4.8.5-36.el7_6.2.x86_64                                12/17 
  验证中      : glibc-common-2.17-260.el7.x86_64                                 13/17 
  验证中      : libgomp-4.8.5-36.el7.x86_64                                      14/17 
  验证中      : glibc-2.17-260.el7.x86_64                                        15/17 
  验证中      : libgcc-4.8.5-36.el7.x86_64                                       16/17 
  验证中      : libstdc++-4.8.5-36.el7.x86_64                                    17/17 

已安装:
  gcc-c++.x86_64 0:4.8.5-36.el7_6.2                                                    

作为依赖被安装:
  cpp.x86_64 0:4.8.5-36.el7_6.2                                                        
  gcc.x86_64 0:4.8.5-36.el7_6.2                                                        
  glibc-devel.x86_64 0:2.17-260.el7_6.6                                                
  glibc-headers.x86_64 0:2.17-260.el7_6.6                                              
  kernel-headers.x86_64 0:3.10.0-957.21.3.el7                                          
  libstdc++-devel.x86_64 0:4.8.5-36.el7_6.2                                            

作为依赖被升级:
  glibc.x86_64 0:2.17-260.el7_6.6          glibc-common.x86_64 0:2.17-260.el7_6.6     
  libgcc.x86_64 0:4.8.5-36.el7_6.2         libgomp.x86_64 0:4.8.5-36.el7_6.2          
  libstdc++.x86_64 0:4.8.5-36.el7_6.2     

完毕!
[root@Nigux ~]# yum install -y pcre pcre-devel
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
软件包 pcre-8.32-17.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 pcre-devel.x86_64.0.8.32-17.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=======================================================================================
 Package               架构              版本                    源               大小
=======================================================================================
正在安装:
 pcre-devel            x86_64            8.32-17.el7             base            480 k

事务概要
=======================================================================================
安装  1 软件包

总下载量:480 k
安装大小:1.4 M
Downloading packages:
pcre-devel-8.32-17.el7.x86_64.rpm                               | 480 kB  00:00:06     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : pcre-devel-8.32-17.el7.x86_64                                      1/1 
  验证中      : pcre-devel-8.32-17.el7.x86_64                                      1/1 

已安装:
  pcre-devel.x86_64 0:8.32-17.el7                                                      

完毕!
[root@Nigux ~]# yum install -y zlib zlib-devel
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
软件包 zlib-1.2.7-18.el7.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 zlib-devel.x86_64.0.1.2.7-18.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=======================================================================================
 Package               架构              版本                    源               大小
=======================================================================================
正在安装:
 zlib-devel            x86_64            1.2.7-18.el7            base             50 k

事务概要
=======================================================================================
安装  1 软件包

总下载量:50 k
安装大小:132 k
Downloading packages:
zlib-devel-1.2.7-18.el7.x86_64.rpm                              |  50 kB  00:00:01     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : zlib-devel-1.2.7-18.el7.x86_64                                     1/1 
  验证中      : zlib-devel-1.2.7-18.el7.x86_64                                     1/1 

已安装:
  zlib-devel.x86_64 0:1.2.7-18.el7                                                     

完毕!
[root@Nigux ~]# yum install -y openssl openssl-devel
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 openssl.x86_64.1.1.0.2k-16.el7 将被 升级
---> 软件包 openssl.x86_64.1.1.0.2k-16.el7_6.1 将被 更新
--> 正在处理依赖关系 openssl-libs(x86-64) = 1:1.0.2k-16.el7_6.1,它被软件包 1:openssl-1.0.2k-16.el7_6.1.x86_64 需要
---> 软件包 openssl-devel.x86_64.1.1.0.2k-16.el7_6.1 将被 安装
--> 正在处理依赖关系 krb5-devel(x86-64),它被软件包 1:openssl-devel-1.0.2k-16.el7_6.1.x86_64 需要
--> 正在检查事务
---> 软件包 krb5-devel.x86_64.0.1.15.1-37.el7_6 将被 安装
--> 正在处理依赖关系 libkadm5(x86-64) = 1.15.1-37.el7_6,它被软件包 krb5-devel-1.15.1-37.el7_6.x86_64 需要
--> 正在处理依赖关系 krb5-libs(x86-64) = 1.15.1-37.el7_6,它被软件包 krb5-devel-1.15.1-37.el7_6.x86_64 需要
--> 正在处理依赖关系 libverto-devel,它被软件包 krb5-devel-1.15.1-37.el7_6.x86_64 需要
--> 正在处理依赖关系 libselinux-devel,它被软件包 krb5-devel-1.15.1-37.el7_6.x86_64 需要
--> 正在处理依赖关系 libcom_err-devel,它被软件包 krb5-devel-1.15.1-37.el7_6.x86_64 需要
--> 正在处理依赖关系 keyutils-libs-devel,它被软件包 krb5-devel-1.15.1-37.el7_6.x86_64 需要
---> 软件包 openssl-libs.x86_64.1.1.0.2k-16.el7 将被 升级
---> 软件包 openssl-libs.x86_64.1.1.0.2k-16.el7_6.1 将被 更新
--> 正在检查事务
---> 软件包 keyutils-libs-devel.x86_64.0.1.5.8-3.el7 将被 安装
---> 软件包 krb5-libs.x86_64.0.1.15.1-34.el7 将被 升级
---> 软件包 krb5-libs.x86_64.0.1.15.1-37.el7_6 将被 更新
---> 软件包 libcom_err-devel.x86_64.0.1.42.9-13.el7 将被 安装
---> 软件包 libkadm5.x86_64.0.1.15.1-37.el7_6 将被 安装
---> 软件包 libselinux-devel.x86_64.0.2.5-14.1.el7 将被 安装
--> 正在处理依赖关系 libsepol-devel(x86-64) >= 2.5-10,它被软件包 libselinux-devel-2.5-14.1.el7.x86_64 需要
--> 正在处理依赖关系 pkgconfig(libsepol),它被软件包 libselinux-devel-2.5-14.1.el7.x86_64 需要
---> 软件包 libverto-devel.x86_64.0.0.2.5-4.el7 将被 安装
--> 正在检查事务
---> 软件包 libsepol-devel.x86_64.0.2.5-10.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=======================================================================================
 Package                   架构         版本                       源             大小
=======================================================================================
正在安装:
 openssl-devel             x86_64       1:1.0.2k-16.el7_6.1        updates       1.5 M
正在更新:
 openssl                   x86_64       1:1.0.2k-16.el7_6.1        updates       493 k
为依赖而安装:
 keyutils-libs-devel       x86_64       1.5.8-3.el7                base           37 k
 krb5-devel                x86_64       1.15.1-37.el7_6            updates       271 k
 libcom_err-devel          x86_64       1.42.9-13.el7              base           31 k
 libkadm5                  x86_64       1.15.1-37.el7_6            updates       178 k
 libselinux-devel          x86_64       2.5-14.1.el7               base          187 k
 libsepol-devel            x86_64       2.5-10.el7                 base           77 k
 libverto-devel            x86_64       0.2.5-4.el7                base           12 k
为依赖而更新:
 krb5-libs                 x86_64       1.15.1-37.el7_6            updates       803 k
 openssl-libs              x86_64       1:1.0.2k-16.el7_6.1        updates       1.2 M

事务概要
=======================================================================================
安装  1 软件包 (+7 依赖软件包)
升级  1 软件包 (+2 依赖软件包)

总计:4.7 M
总下载量:2.3 M
Downloading packages:
(1/8): keyutils-libs-devel-1.5.8-3.el7.x86_64.rpm               |  37 kB  00:00:01     
(2/8): libcom_err-devel-1.42.9-13.el7.x86_64.rpm                |  31 kB  00:00:01     
(3/8): libsepol-devel-2.5-10.el7.x86_64.rpm                     |  77 kB  00:00:00     
(4/8): libverto-devel-0.2.5-4.el7.x86_64.rpm                    |  12 kB  00:00:00     
(5/8): libkadm5-1.15.1-37.el7_6.x86_64.rpm                      | 178 kB  00:00:01     
(6/8): krb5-devel-1.15.1-37.el7_6.x86_64.rpm                    | 271 kB  00:00:01     
(7/8): libselinux-devel-2.5-14.1.el7.x86_64.rpm                 | 187 kB  00:00:01     
(8/8): openssl-devel-1.0.2k-16.el7_6.1.x86_64.rpm               | 1.5 MB  00:00:00     
---------------------------------------------------------------------------------------
总计                                                      972 kB/s | 2.3 MB  00:02     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在更新    : 1:openssl-libs-1.0.2k-16.el7_6.1.x86_64                           1/14 
  正在更新    : krb5-libs-1.15.1-37.el7_6.x86_64                                  2/14 
  正在安装    : libkadm5-1.15.1-37.el7_6.x86_64                                   3/14 
  正在安装    : libcom_err-devel-1.42.9-13.el7.x86_64                             4/14 
  正在安装    : libsepol-devel-2.5-10.el7.x86_64                                  5/14 
  正在安装    : libselinux-devel-2.5-14.1.el7.x86_64                              6/14 
  正在安装    : libverto-devel-0.2.5-4.el7.x86_64                                 7/14 
  正在安装    : keyutils-libs-devel-1.5.8-3.el7.x86_64                            8/14 
  正在安装    : krb5-devel-1.15.1-37.el7_6.x86_64                                 9/14 
  正在安装    : 1:openssl-devel-1.0.2k-16.el7_6.1.x86_64                         10/14 
  正在更新    : 1:openssl-1.0.2k-16.el7_6.1.x86_64                               11/14 
  清理        : 1:openssl-1.0.2k-16.el7.x86_64                                   12/14 
  清理        : krb5-libs-1.15.1-34.el7.x86_64                                   13/14 
  清理        : 1:openssl-libs-1.0.2k-16.el7.x86_64                              14/14 
  验证中      : 1:openssl-1.0.2k-16.el7_6.1.x86_64                                1/14 
  验证中      : keyutils-libs-devel-1.5.8-3.el7.x86_64                            2/14 
  验证中      : libverto-devel-0.2.5-4.el7.x86_64                                 3/14 
  验证中      : krb5-libs-1.15.1-37.el7_6.x86_64                                  4/14 
  验证中      : libkadm5-1.15.1-37.el7_6.x86_64                                   5/14 
  验证中      : krb5-devel-1.15.1-37.el7_6.x86_64                                 6/14 
  验证中      : libselinux-devel-2.5-14.1.el7.x86_64                              7/14 
  验证中      : 1:openssl-libs-1.0.2k-16.el7_6.1.x86_64                           8/14 
  验证中      : libsepol-devel-2.5-10.el7.x86_64                                  9/14 
  验证中      : libcom_err-devel-1.42.9-13.el7.x86_64                            10/14 
  验证中      : 1:openssl-devel-1.0.2k-16.el7_6.1.x86_64                         11/14 
  验证中      : 1:openssl-libs-1.0.2k-16.el7.x86_64                              12/14 
  验证中      : krb5-libs-1.15.1-34.el7.x86_64                                   13/14 
  验证中      : 1:openssl-1.0.2k-16.el7.x86_64                                   14/14 

已安装:
  openssl-devel.x86_64 1:1.0.2k-16.el7_6.1                                             

作为依赖被安装:
  keyutils-libs-devel.x86_64 0:1.5.8-3.el7     krb5-devel.x86_64 0:1.15.1-37.el7_6    
  libcom_err-devel.x86_64 0:1.42.9-13.el7      libkadm5.x86_64 0:1.15.1-37.el7_6      
  libselinux-devel.x86_64 0:2.5-14.1.el7       libsepol-devel.x86_64 0:2.5-10.el7     
  libverto-devel.x86_64 0:0.2.5-4.el7         

更新完毕:
  openssl.x86_64 1:1.0.2k-16.el7_6.1                                                   

作为依赖被升级:
  krb5-libs.x86_64 0:1.15.1-37.el7_6      openssl-libs.x86_64 1:1.0.2k-16.el7_6.1     

完毕!
编译安装

首先清理一下原有虚拟机/usr/local/ 路径下的Nigix安装程序

[root@Nigux ~]# rm -rf *
[root@Nigux ~]# rm -rf /usr/local/nginx/
[root@Nigux ~]# rm -rf /var/temp/

将nginx-1.8.0.tar.gz拷贝至linux服务器。

解压:
tar -zxvf nginx-1.8.0.tar.gz
cd nginx-1.8.0

然后进入解压后的文件夹nginx-1.8.0
ls

[root@Nigux nginx-1.8.0]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src
查看这些源码文件是否可执行

命令:ll

[root@Nigux nginx-1.8.0]# ll
总用量 632
drwxr-xr-x. 6 1001 1001   4096 7月  28 01:21 auto
-rw-r--r--. 1 1001 1001 249124 4月  21 2015 CHANGES
-rw-r--r--. 1 1001 1001 379021 4月  21 2015 CHANGES.ru
drwxr-xr-x. 2 1001 1001    168 7月  28 01:21 conf
-rwxr-xr-x. 1 1001 1001   2478 4月  21 2015 configure
drwxr-xr-x. 4 1001 1001     72 7月  28 01:21 contrib
drwxr-xr-x. 2 1001 1001     40 7月  28 01:21 html
-rw-r--r--. 1 1001 1001   1397 4月  21 2015 LICENSE
drwxr-xr-x. 2 1001 1001     21 7月  28 01:21 man
-rw-r--r--. 1 1001 1001     49 4月  21 2015 README
drwxr-xr-x. 8 1001 1001     77 7月  28 01:21 src

如何看是否可以执行的文件

解答:带X的

image.png

因为直接 输入 make 命令 会提示makefile文件找不到


image.png

那么 我们根据configure 生成 makefile文件

输入

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
注意:上边将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录
[root@Nigux nginx-1.8.0]# ll
总用量 636
drwxr-xr-x. 6 1001 1001   4096 7月  28 01:21 auto
-rw-r--r--. 1 1001 1001 249124 4月  21 2015 CHANGES
-rw-r--r--. 1 1001 1001 379021 4月  21 2015 CHANGES.ru
drwxr-xr-x. 2 1001 1001    168 7月  28 01:21 conf
-rwxr-xr-x. 1 1001 1001   2478 4月  21 2015 configure
drwxr-xr-x. 4 1001 1001     72 7月  28 01:21 contrib
drwxr-xr-x. 2 1001 1001     40 7月  28 01:21 html
-rw-r--r--. 1 1001 1001   1397 4月  21 2015 LICENSE
-rw-r--r--. 1 root root    345 7月  28 01:33 Makefile
drwxr-xr-x. 2 1001 1001     21 7月  28 01:21 man
drwxr-xr-x. 3 root root    125 7月  28 01:33 objs
-rw-r--r--. 1 1001 1001     49 4月  21 2015 README
drwxr-xr-x. 8 1001 1001     77 7月  28 01:21 src

然后输入命令: make

安装make

make install

然后查看一下 Nginx 安装的路径 是不是在/usr/local/ 看看有没有nginx

[root@Nigux nginx-1.8.0]# cd /usr/local/
[root@Nigux local]# ll
总用量 0
drwxr-xr-x. 2 root root  6 4月  11 2018 bin
drwxr-xr-x. 2 root root  6 4月  11 2018 etc
drwxr-xr-x. 2 root root  6 4月  11 2018 games
drwxr-xr-x. 2 root root  6 4月  11 2018 include
drwxr-xr-x. 2 root root  6 4月  11 2018 lib
drwxr-xr-x. 2 root root  6 4月  11 2018 lib64
drwxr-xr-x. 2 root root  6 4月  11 2018 libexec
drwxr-xr-x. 5 root root 42 7月  28 01:39 nginx
drwxr-xr-x. 2 root root  6 4月  11 2018 sbin
drwxr-xr-x. 5 root root 49 7月  27 08:28 share
drwxr-xr-x. 2 root root  6 4月  11 2018 src

进入nginx 文件夹 中的 sbin

[root@Nigux local]# cd nginx
[root@Nigux nginx]# ls
conf  html  sbin
[root@Nigux nginx]# cd sbin

运行 Ngnix
./nginx

出现上面提到的错误 没有temp 目录

nginx: [emerg] mkdir() "/var/temp/nginx/client" failed (2: No such file or directory)

解决

创建temp目录

命令

mkdir  /var/temp/nginx

有提示错误 应该一层一层创建

[root@Nigux sbin]# mkdir  /var/temp/nginx
mkdir: 无法创建目录"/var/temp/nginx": 没有那个文件或目录

解决

 mkdir  /var/temp/nginx -p

重新启动Nginx

./nginx 
查询nginx进程:
image.png

15098是nginx主进程的进程id,15099是nginx工作进程的进程id

注意:执行./nginx****启动nginx****,这里可以-c****指定加载的nginx****配置文件,如下:

./nginx -c /usr/local/nginx/conf/nginx.conf

如果不指定-c****,nginx****在启动时默认加载conf/nginx.conf****文件,此文件的地址也可以在编译安装nginx****时指定./configure****的参数(--conf-path= 指向配置文件(nginx.conf****))

[root@Nigux sbin]# ./nginx
[root@Nigux sbin]# ps aux|grep
用法: grep [选项]... PATTERN [FILE]...
试用‘grep --help’来获得更多信息。
[root@Nigux sbin]# ps aux|grep nginx
root      12518  0.0  0.0  24884   772 ?        Ss   02:01   0:00 nginx: master process ./nginx
nobody    12520  0.0  0.1  27396  1532 ?        S    02:01   0:00 nginx: worker process
root      12616  0.0  0.0 112724   992 pts/0    R+   02:04   0:00 grep --color=auto nginx
[root@Nigux sbin]# 

游览器:http://192.168.191.129/

image.png
停止nginx

方式1,快速停止:
cd /usr/local/nginx/sbin
./nginx -s stop
此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

方式2,完整停止(建议使用):
cd /usr/local/nginx/sbin
./nginx -s quit
此方式停止步骤是待nginx进程处理任务完毕进行停止。

重启nginx

方式1,先停止再启动(建议使用):
对nginx进行重启相当于先停止nginx再启动nginx,即先执行停止命令再执行启动命令。
如下:
./nginx -s quit
./nginx

方式2,重新加载配置文件:在不关机的状态,修改配置文件
当nginx的配置文件nginx.conf修改后,要想让配置生效需要重启nginx,使用-s reload不用先停止nginx再启动nginx即可将配置信息在nginx中生效,如下:
./nginx -s reload

相关文章

网友评论

    本文标题:Nginx安装详细流程

    本文链接:https://www.haomeiwen.com/subject/eeayrctx.html