Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
安装Nginx依赖库
安装gcc g++的依赖库
ubuntu平台可以使用如下命令。
- apt-get install build-essential
- apt-get install libtool
centeros平台可以使用如下命令。
- centos平台编译环境使用如下指令
- 安装make:
- yum -y install gcc automake autoconf libtool make
- 安装g++:
- yum install gcc gcc-c++
安装 pcre依赖库(http://www.pcre.org/)
- sudo apt-get update
- sudo apt-get install libpcre3 libpcre3-dev
安装 zlib依赖库(http://www.zlib.net)
- apt-get install zlib1g-dev
安装 ssl依赖库
- apt-get install openssl
安装Nginx(http://nginx.org)
- #下载最新版本:
- wget http://Nginx.org/download/Nginx-1.11.3.tar.gz
- #解压:
- tar -zxvf Nginx-1.11.3.tar.gz
- #进入解压目录:
- cd Nginx-1.11.3
- #配置:
- ./configure --prefix=/usr/local/Nginx
- #编辑Nginx:
- make
- 注意:这里可能会报错,提示“pcre.h No such file or directory”,具体详见:http://stackoverflow.com/questions/22555561/error-building-fatal-error-pcre-h-no-such-file-or-directory
- 需要安装 libpcre3-dev,命令为:sudo apt-get install libpcre3-dev
- #安装Nginx:
- sudo make install
- #启动Nginx:
- sudo /usr/local/Nginx/sbin/Nginx -c /usr/local/Nginx/conf/Nginx.conf
- 注意:-c 指定配置文件的路径,不加的话,Nginx会自动加载默认路径的配置文件,可以通过 -h查看帮助命令。
- #查看Nginx进程:
- ps -ef|grep Nginx
Nginx常用命令
启动 Nginx
停止 Nginx
-s都是采用向 Nginx 发送信号的方式。
Nginx重新加载配置
- ./sbin/Nginx -s reload
指定配置文件
-c表示configuration,指定配置文件
查看 Nginx 版本
有两种可以查看 Nginx 的版本信息的参数。第一种如下:
另一种显示的是详细的版本信息:
检查配置文件是否正确
- poechant@ubuntu:/usr/local/Nginx$ ./sbin/Nginx -t
- Nginx: [alert] could not open error log file: open() "/usr/local/Nginx/logs/error.log" Failed (13: Permission denied)
- Nginx: the configuration file /usr/local/Nginx/conf/Nginx.conf Syntax is ok
- 2012/01/09 16:45:09 [emerg] 23898#0: open() "/usr/local/Nginx/logs/Nginx.pid" Failed (13: Permission denied)
- Nginx: configuration file /usr/local/Nginx/conf/Nginx.conf test Failed
如果出现如上的提示信息,表示没有访问错误日志文件和进程,可以sudo(super user do)一下:
显示帮助信息如果显示如上,则表示配置文件正确。否则,会有相关提示。
或者:
测试Nginx
进入目录/usr/local/Nginx/sbin,输入测试命令sudo ./Nginx -t,测试Nginx是否正确安装,这时出现下面的错误,这是文件权限问题。
Nginx: [alert] could not open error log file: open() "/usr/local/Nginx/logs/error.log" Failed (13: Permission denied)
2014/06/30 10:31:57 [emerg] 5358#0: mkdir() "/usr/local/Nginx/client_body_temp" Failed (13: Permission denied)
使用命令:
sudo chmod a+rwx -R 目录名
也可以输入sudo ./Nginx命令启动Nginx,使用浏览器访问http://127.0.0.1,会显示同样的Nginx欢迎界面,表示安装成功(源码安装和apt-get版本不一样,故显示结果也不一样)。
我是在vmware虚拟机中的ubuntu安装的,也可以通过win7主机系统的浏览器访问:
apt卸载Nginx方法
卸载方法1.
# 删除Nginx,保留配置文件
sudo apt-get remove Nginx
#删除配置文件
rm -rf /etc/Nginx
卸载方法2.
#删除Nginx连带配置文件
sudo apt-get purge Nginx # Removes everything.
#卸载不再需要的Nginx依赖程序 sudo apt-get autoremove