介绍
nginx是什么? 这是官网的说明: NGINX is a free, open-source, high-performance HTTP server and reverse proxy, as well as an IMAP/POP3 proxy server.
注: 下面具体操作是已CentOS7为例.
安装
版本选择
nginx的开源项目提供了两个版本供选择:
- The mainline version. 这个版本包含了最新的功能,修复最新的bug,并且总是最新的可靠版本. 但是它可能会包含一些实验性的模块,而这些模块可能会有些bug.
- The stable version.不会有最新的功能,但是会修复重大bug,生产环境推荐用这个版本.
安装方式选择
对于不同的操作系统,nginx提供了多种不同的安装方式,对于linux有两种:
- 通过源代码编译安装.
- 通过从软件源获取预编译过的软件包安装.
对比如下:
安装方式 | 优点 | 缺点 |
---|---|---|
源代码 | 1. 版本选择多 2. 参数配置自由 | 流程复杂,难度高点 |
软件包 | 快速简单 | 1. 无一些特殊功能 2. 版本可能不是最新 |
1. 通过源代码编译安装
有四个步骤:
- 安装依赖.
- 下载源代码.
- 配置build选项.
- 完成安装.
1.1 安装依赖
有三个依赖:
- PCRE (required by NGINX Core and Rewrite modules and provides support for regular expressions)
- Zlib (required by NGINX Gzip module for headers compression)
- OpenSSL (required by NGINX SSL modules to support the HTTPS protocol)
以PCRE为例,其他类似,具体版本选择可以自己去查:
$ wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz
$ tar -zxf pcre-8.39.tar.gz
$ cd pcre-8.39
$ ./configure
$ make
$ sudo make install
确保安装完上述三个依赖之后继续下一步.
1.2 下载源代码
官方提供的源代码的下载地址: http://nginx.org/en/download.html
确定版本之后运行下列命令:
$ wget http://nginx.org/download/nginx-1.11.5.tar.gz
$ tar zxf nginx-1.11.5.tar.gz
$ cd nginx-1.11.5
注意上面的nginx-1.11.5
是你自己选择的具体的版本号.
1.3 配置build选项
在nginx-1.11.5
目录下运行./configure
并加上配置参数,比如:
$ ./configure
--sbin-path=/usr/local/nginx/nginx
--conf-path=/usr/local/nginx/nginx.conf
--pid-path=/usr/local/nginx/nginx.pid
--with-pcre=../pcre-8.39
--with-zlib=../zlib-1.2.8
--with-http_ssl_module
--with-stream
--with-mail=dynamic
--add-module=/usr/build/nginx-rtmp-module
--add-dynamic-module=/usr/build/3party_module
注意这是一条命令而已,可以通过
\
来换行
具体需要打开什么功能可参考官网选择.
还有第三方模块的添加如下:
./configure ... --add-module=/usr/build/nginx-rtmp-module # 静态模块
./configure ... --add-dynamic-module=/path/to/module # 动态模块
1.4 完成安装
最后执行:
$ make
$ sudo make install
还是nginx目录
可以通过这个命令检测:
nginx -vnginx
version: nginx/1.6.3 # 输出版本信息说明成功.
2. 通过从软件源获取预编译过的软件包安装.
CentOS可以直接运行这个:
sudo yum install nginx
如果该方法安装的版本过低,则可以去添加个nginx.repo
.
安装成功之后就可以将nginx启动:
sudo nginx
验证启动与否:
$ curl -I 127.0.0.1
HTTP/1.1 200 OK # 出现这个说明启动成功
Server: nginx/1.11.5
网友评论