帮助中心 >  技术知识库 >  虚拟主机 >  虚拟主机基础知识 >  Nginx使用教程(一):下载并编译安装Nginx

Nginx使用教程(一):下载并编译安装Nginx

2017-02-28 23:51:51 8869

Nginx使用教程(一):下载并编译安装Nginx


安装依赖



我们已经选择下载程序源代码进行手动编译,而不是使用软件包管理器(如Yum,Aptitude或Yast)进行安装。 这个选择有两个原因。 首先,软件包可能不包含在您的Linux发行版的存储库中。 此外,提供下载和安装Nginx的存储库经常包含比较旧的版本。 更重要的是,你可能需要配置各种各样的编译选项。 由于选择了手动编译,你的系统需要一些工具和库进行编译安装。
根据您在编译时选择的模块,您可能需要不同的依赖。 下面介绍最常见的依赖,如GCC,PCRE,zlib和OpenSSL。

The GNU Compiler Collection

Nginx是用C编写的程序,因此您首先需要在系统上安装一个编译器工具,如GNU编译器集合(GCC)。 GCC可能已经安装在您的系统上,如果没有,必须先安装它。
首先,通过运行以下命令确保系统上尚未安装GCC:
[alex@example.com ~]$ gcc
如果您得到以下输出,这意味着GCC已经正确安装在您的系统上了,您可以跳到下一部分:
gcc: no input files
如果收到以下消息,则必须继续安装编译器:
~bash: gcc: command not found
对于CentOS系统:

[root@example.com ~]# yum groupinstall "Development Tools"

对于Ubuntu系统:

[root@example.com ~]# apt-get install build-essentials

PCRE库

需要Perl兼容的正则表达式(PCRE)库来编译Nginx。 Nginx的Rewrite和HTTP核心模块使用PCRE作为其正则表达式的语法,在后面的章节中将会发现。 您将需要安装两个软件包:pcre和pcre-devel。 第一个包提供了编译版本的库,而第二个包提供了开发头文件和源?件来编译项目。
如果使用yum,运行以下命令安装:

[root@example.com ~]# yum install pcre pcre-devel

如果使用apt-get,运行以下命?安装:

[root@example.com ~]# apt-get install libpcre3 libpcre3-dev

zlib库

zlib库为开发人员提供了压缩算法。 在Nginx的各个模块中使用的gzip压缩功能需要zlib库。 同样,您可以使用您的包管理器来安装此组件,因为它默认存在于存储库中。 类似于PCRE,您将需要库及其源进行安装:zlib和zlib-devel。
如果使用yum,运行以下命令安装:

[root@example.com ~]# yum install zlib zlib-devel

如果使用apt-get,运行以下命令安装:

[root@example.com ~]# apt-get install zlib1g zlib1g-dev

OpenSSL

Nginx使用OpenSSL库来提供ssl连接。 因此,我们需要安装openssl库及其开发包。需要安装openssl和openssl-devel:
如果使用yum,运行以下命令安装:

[root@example.com ~]# yum install openssl openssl-devel

如果使用apt-get,运行以下命令安装:

[root@example.com ~]# apt-get install openssl openssl-dev

现在您已经安装了所有依赖条件,?以下载并编译Nginx源代码了。

下载Nginx



一旦您选择了要使用的版本,请打开http://www.landui.com并找到您要下载的文件的URL。并使用wget下载该文件:

[alex@example.com ~]$ mkdir src && cd src

[alex@example.com src]$ wget http://www.landui.com/download/nginx-1.10.2.tar.gz

[alex@example.com src]$ tar zxf nginx-1.10.2.tar.gz

您已成功下载并解压Nginx。 现在,下一步?是配置编译过程。

编译参数请参考之前所写文章:

Nginx编译参数详解:http://www.landui.com/help/show-5168.html

管理Nginx进程?参考之前所写文章:

Nginx主程序使用介绍:http://www.landui.com/help/show-5170.html

添加Nginx到系统服务请参考之前所写文章:

添加Nginx为系统服务:http://www.landui.com/help/show-5173.html



提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: