Nginx的官网:http://Nginx.org/ ,Nginx有三个版本:稳定版、开发版和历史稳定版。开发版更新快,包含最新的功能和bug修复,但同时也可能会出现新的bug。开发版一旦更新稳定下来,就会被加入稳定版分支,稳定版更新较慢,但bug较少,所以生产环境优先选择稳定版。
一、下载Nginx安装文件
目前最新稳定版:http://Nginx.org/download/Nginx-1.10.1.tar.gz ,可以先下载好安装文件再通过ftp上传的CentOS上,也可以在CentOS上直接通过wget命令下载,这里我将文件下载到了/home/software文件夹下,如下:
[root@localhost software]# pwd /home/software [root@localhost software]# wget http://Nginx.org/download/Nginx-1.10.1.tar.gz
二、解压安装文件
[root@songguoliang software]# tar -xzvf Nginx-1.10.1.tar.gz
三、执行configure命令
通过cd命令进入Nginx解压文件目录,执行该目录下的configure命令,--prefix是打算将Nginx安装在哪个目录。在执行configure命令之前,确保安装了gcc、openssl-devel、pcre-devel和zlib-devel软件库(gzip模块需要 zlib 库,rewrite模块需要 pcre 库,ssl 功能需要openssl库),也可以直接执行configure命令,根据提示缺少的软件库安装,下面有缺少相应库报的错误信息和安装依赖库的方法。
[root@localhost software]# cd Nginx-1.10.1 [root@localhost Nginx-1.10.1]# pwd /home/software/Nginx-1.10.1 [root@localhost Nginx-1.10.1]# ./configure --prefix=/usr/local/Nginx1、如果报下面错误,说明还没有安装gcc编译环境,可以通过yum在线安装功能安装gcc,重新执行configure命令。
[root@localhost Nginx-1.10.1]# ./configure --prefix=/usr/local/Nginx checking for OS + Linux 2.6.32-431.el6.x86_64 x86_64 checking for C compiler ... not found ./configure: error: C compiler cc is not found在线安装gcc:
[root@localhost Nginx-1.10.1]# yum install gcc2、如果报下面的错误,说明没有安装pcre-devel库,通过yum在线安装pcre后,重新执行configure命令。
./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option,or install the PCRE library into the system,or build the PCRE library statically from the source with Nginx by using --with-pcre=<path> option.在线安装pcre-devel库:
[root@localhost Nginx-1.10.1]# yum -y install pcre-devel-y参数表示使用yum在线安装时,如果需要用户输入Y/N时自动输入Y。
3、如果报下面的错误,说明没有安装zlib库,安装zlib库后重新执行configure命令。
./configure: error: the HTTP gzip module requires the zlib library. You can either disable the module by using --without-http_gzip_module option,or install the zlib library into the system,or build the zlib library statically from the source with Nginx by using --with-zlib=<path> option.在线安装zlib库:
[root@localhost Nginx-1.10.1]# yum -y install zlib-devel
执行configure命令成功后,显示如下信息:
checking for zlib library ... found creating objs/Makefile Configuration summary + using system PCRE library + OpenSSL library is not used + using builtin md5 code + sha1 library is not found + using system zlib library Nginx path prefix: "/usr/local/Nginx" Nginx binary file: "/usr/local/Nginx/sbin/Nginx" Nginx modules path: "/usr/local/Nginx/modules" Nginx configuration prefix: "/usr/local/Nginx/conf" Nginx configuration file: "/usr/local/Nginx/conf/Nginx.conf" Nginx pid file: "/usr/local/Nginx/logs/Nginx.pid" Nginx error log file: "/usr/local/Nginx/logs/error.log" Nginx http access log file: "/usr/local/Nginx/logs/access.log" Nginx http client request body temporary files: "client_body_temp" Nginx http proxy temporary files: "proxy_temp" Nginx http fastcgi temporary files: "fastcgi_temp" Nginx http uwsgi temporary files: "uwsgi_temp" Nginx http scgi temporary files: "scgi_temp"
四、执行make命令
[root@localhost Nginx-1.10.1]# make
五、执行make install命令
[root@localhost Nginx-1.10.1]# make install
步骤四和步骤五可以合并执行如下命令,连接符 && 代表前面一个命令如果执行成功则继续执行后面的命令,如果前面命令执行失败则不再执行后面的命令。而 || 表示如果前面的命令执行成功则不执行后面的命令,如果前面的命令执行失败则继续执行后面的命令
[root@localhost Nginx-1.10.1]# make && make install
六、启动Nginx服务
[root@localhost Nginx-1.10.1]# cd /usr/local/Nginx/ [root@localhost Nginx]# ll 总用量 16 drwxr-xr-x. 2 root root 4096 10月 1 23:35 conf drwxr-xr-x. 2 root root 4096 10月 1 23:35 html drwxr-xr-x. 2 root root 4096 10月 1 23:35 logs drwxr-xr-x. 2 root root 4096 10月 1 23:35 sbin [root@songguoliang Nginx]# ./sbin/Nginx
通过浏览器访问Nginx,显示如下welcome to Nginx!页面便表示安装成功:
如果80端口被占用,服务将启动失败,关闭其他程序重新启动Nginx即可。
如果开启着防火墙,需要开放80端口,在/etc/sysconfig/iptables文件里添加如下内容:
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT