1.获取新版本的nginx服务器. 2. 安装nginx之前在linux系统上确保安装以下软件和第三方库. yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel open openssl-devel 注意如下: (1)gcc是安装GUN C语言编译器,用来编译nginx源代码的。 (2)automake是安装Automake工具,Automake工具是用来完成自动创建Makefile文件的。 (3)由于nginx的一些模块需要依赖其他第三方库,通常有:pcre库(支持rewrite模块),zlib库(支持gzip模块),openssl库(支持ssl模块 ),所以需要安装pcre, zlib, openssl库。 (4)gcc-c++ 是C++编译器。 3.编译和安装nginx服务器 #复制nginx到/usr/local/src/目录下 [root@ip40 tmp]# cp nginx-1.6.2.tar.gz /usr/local/src/ [root@ip40 tmp]# cd /usr/local/src [root@ip40 src]# ls nginx-1.6.2.tar.gz #解压缩 [root@ip40 src]# tar zxf nginx-1.6.2.tar.gz [root@ip40 src]# ls nginx-1.6.2 #进入nginx源码目录下 [root@ip40 src]# cd nginx-1.6.2 #查看解压缩出来的文件和目录 [root@ip40 nginx-1.6.2]# ls -l 总用量 620 drwxr-xr-x. 6 1001 1001 -rw-r--r--. 1 1001 1001 236013 9月 -rw-r--r--. 1 1001 1001 359556 9月 drwxr-xr-x. 2 1001 1001 -rwxr-xr-x. 1 1001 1001 drwxr-xr-x. 4 1001 1001 drwxr-xr-x. 2 1001 1001 -rw-r--r--. 1 1001 1001 drwxr-xr-x. 2 1001 1001 -rw-r--r--. 1 1001 1001 drwxr-xr-x. 8 1001 1001 对解压缩出来的部分文件和目录做个简单的介绍: (1) src目录中存放了nginx软件的所有源代码. (2) man目录中存放了nginx软件的帮助文档,nginx安装后,在命令行输入man命令可查看: [root@ip40 nginx-1.6.2]# man nginx (3) html目录中存放了后缀是.html的静态网页文件,这是网页文件的存放目录。 (4) conf目录存放的是nginx服务器的配置文件,最重要的是nginx.conf配置文件。 (5)auto目录存放了大量的脚本文件,和configure脚本程序有关. (6)configure 文件是nginx软件的自动脚本程序,运行configure脚本会根据系统叁数及环境产生合适的Makefile文件或是C的头文件(header file),让源程序可以很方便地在这些不同的平台上被编译连接。 4.使用configure脚本自动生成Makefile文件 [root@ip40 nginx-1.6.2]# ./configure --prefix=/usr/local/nginx configure脚本常用选项: --prefix= 5.编译和安装nginx 得到了nginx软件的Makefile文件就可以编译源码了: [root@ip40 nginx-1.6.2]# ls auto CHANGES [root@ip40 nginx-1.6.2]# make [root@ip40 nginx-1.6.2]# make install #安装完成后,到刚才--prefix指定的安装目录下看看 [root@ip40 nginx-1.6.2]# cd /usr/local/nginx [root@ip40 nginx]# ls conf niginx服务器的安装目录中包含了conf,html,logs,sbin四个目录: (1)conf目录 [root@ip40 conf]# ls fastcgi.conf fastcgi.conf.default fastcgi_params fastcgi_params.default koi-utf conf目录存放了nginx的所有配置文件,其中nginx.conf是Nginx服务器的主配置文件,其他配置文件是用来配置nginx相关功能的。在这个目录下所有的配置文件都有对应的以.default结尾的默认配置文件,方便我们将配置过的.conf文件回复到初始状态。 (2)html目录 [root@ip40 html]# ls 50x.html html目录中存放了Nginx运行过程中调用的html静态网页文件,我们自定义的网页文件都要放到这里才能解析。 logs目录存放Nginx服务器日志文件的,目前Nginx服务器没有启动,所以目录是空的。 [root@ip40 sbin]# ls nginx sbin目录中有一个nginx文件,这是nginx服务器的主程序。 6.Nginx服务器的启动/停止/重启 6.1 nginx服务的启动: 启动Nginx服务器直接运行/usr/local/nginx/sbin目录中的二进制文件nginx即可,简介以下二进制文件nginx的用法: [root@ip40 nginx]# cd /usr/local/nginx/sbin [root@ip40 sbin]# ./nginx -h nginx version: nginx/1.6.2 Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives] Options: 以下是每个参数的分析: -t检查nginx服务器配置文件是否有语法错误,可以与-c一起使用,如果检查通过列出以下信息: [root@ip40 sbin]# ./nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful -s用于向nginx服务器的主进程发送信号来控制服务器的启动,停止,重启。 -p用来改变nginx服务器的安装路径,用在平滑升级nginx服务器场合。 -c用来指定启动nginx服务器的配置文件,用在平滑重启Nginx服务器场合。 -g用来补充nginx配置文件的,向Nginx服务器指定启动时应用于全局的配置。 分析了以上参数后,启动nginx服务器: [root@ip40 sbin]# ./nginx 查看nginx服务的进程: [root@ip10 ~]# ps -ef | grep nginx root |