在上一篇中,我们介绍了使用docker的方式来安装ngnix,并且还介绍了如何通过挂载容器的方式来简化操作。可能对于Docker技术不是很熟的人来说可能还不是很方便上手,没关系,本篇就介绍一下如何使用源码来进行nginx的安装,毕竟源码编译安装的方式,对于开发人员来说总有一种比较亲切的感觉,而且自由度更高。

一、源码安装Nginx

  • 1.1 下载源码

进入到官网,下载最新的版本,如下图所示:




nginx源码安装文档 源码安装nginx命令_ps命令源码 在哪

进入nginx官网



或者通过wget命令直接在服务器上下载,

wget http://nginx.org/download/nginx-1.17.9.tar.gz

如下图所示:




nginx源码安装文档 源码安装nginx命令_nginx_02

下载nginx源码



  • 1.2 解压源码

执行解压命令,如下:

tar -xvf nginx-1.17.9.tar.gz

解压之后效果如下图所示:




nginx源码安装文档 源码安装nginx命令_ps命令源码 在哪_03

解压源码包



  • 1.3 编译配置

进入到解压后的目录nginx-1.17.9中,执行编译配置命令:

./configure --prefix=/app/nginx1179

说明:这里--prefix参数是指定最终编译安装的位置为:/app/nginx1179 , 当然这里也可以添加其它的参数来扩展更多的功能,比如我们需要支持ssl的话,就需要添加配置 --with-http_ssl_module,更多的配置可以参考Nginx官网

具体执行命令,如下图所示:




nginx源码安装文档 源码安装nginx命令_nginx_04

编译配置nginx



  • 1.4 安装Nginx

通过上面的步骤,我们已经编译完成,如果没有出现错误的话,我们就可以执行安装命令:

make & make install

安装完成之后,如果没有报错,我们进入到/app/nginx1179目录中,查看编译安装之后的文件,如下图所示:




nginx源码安装文档 源码安装nginx命令_编译安装_05

编译安装完成文件目录预览



  • 1.5 启动nginx

编译完成之后,会生成如上图所示四个文件夹,为了验证我们是否安装成功,我们可以先启动一下nginx验证是否会报错,这里由于是简单验证,所以就直接使用默认配置,默认端口是80。

进入到sbin目录,执行命令,启动nginx:

./nginx
  • 1.6 验证

上面步骤中执行命令没有报错的话,我们可以先在本地机器进行验证,执行curl命令:

curl -I localhost

如下图所示:




nginx源码安装文档 源码安装nginx命令_ps命令源码 在哪_06

验证nginx是否启动成功



从上图中可以看出,返回的状态码是200,说明已经启动成功了,当然我们也可以使用ps -ef|grep nginx命令来查看nginx是否启动成功。

二、安装小插曲

通过上面的6个步骤,相信很多小伙伴都已经安装好了nginx,当然可能有些小伙伴会遇到一些问题,最常见的问题就是缺少编译组件或者其它错误,这里给大家列举一个常见的错误和解决方案。

  • 2.1 错误提示

在安装过程中,在执行configure的时候,出现如下错误提示:

make: *** No rule to make target `build', needed by `default'. Stop.
  • 2.2 解决方式

更新和安装相关依赖,执行如下命令:

yum install -y gcc pcre pcre-devel openssl openssl-devel gd gd-devel

安装完成之后,我们可以再继续执行编译安装命令:

./configure --prefix=/app/nginx1179