在上一篇中,我们介绍了使用docker的方式来安装ngnix,并且还介绍了如何通过挂载容器的方式来简化操作。可能对于Docker技术不是很熟的人来说可能还不是很方便上手,没关系,本篇就介绍一下如何使用源码来进行nginx的安装,毕竟源码编译安装的方式,对于开发人员来说总有一种比较亲切的感觉,而且自由度更高。
一、源码安装Nginx
- 1.1 下载源码
进入到官网,下载最新的版本,如下图所示:
进入nginx官网
或者通过wget命令直接在服务器上下载,
wget http://nginx.org/download/nginx-1.17.9.tar.gz
如下图所示:
下载nginx源码
- 1.2 解压源码
执行解压命令,如下:
tar -xvf nginx-1.17.9.tar.gz
解压之后效果如下图所示:
解压源码包
- 1.3 编译配置
进入到解压后的目录nginx-1.17.9中,执行编译配置命令:
./configure --prefix=/app/nginx1179
说明:这里--prefix参数是指定最终编译安装的位置为:/app/nginx1179 , 当然这里也可以添加其它的参数来扩展更多的功能,比如我们需要支持ssl的话,就需要添加配置 --with-http_ssl_module,更多的配置可以参考Nginx官网。
具体执行命令,如下图所示:
编译配置nginx
- 1.4 安装Nginx
通过上面的步骤,我们已经编译完成,如果没有出现错误的话,我们就可以执行安装命令:
make & make install
安装完成之后,如果没有报错,我们进入到/app/nginx1179目录中,查看编译安装之后的文件,如下图所示:
编译安装完成文件目录预览
- 1.5 启动nginx
编译完成之后,会生成如上图所示四个文件夹,为了验证我们是否安装成功,我们可以先启动一下nginx验证是否会报错,这里由于是简单验证,所以就直接使用默认配置,默认端口是80。
进入到sbin目录,执行命令,启动nginx:
./nginx
- 1.6 验证
上面步骤中执行命令没有报错的话,我们可以先在本地机器进行验证,执行curl命令:
curl -I localhost
如下图所示:
验证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