在FQ系统设计时使用squid遇到了点问题,于是被要求换思路,考虑nginx实现。其实我觉得2者应该都是可以实现。关键在于精通。现在开始学习Nginx。
一、安装
安装前准备
如果系统为centos6,而yum源不正确,可以使用163的源。在/etc/yum.repos.d目录下,下载yum源。
[root@one-663 yum.repos.d]# wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
安装gcc、g++
# yum install gcc gcc-c++ libtool zlib zlib-devel
安装pcre
在pcre下载地址下载PCRE
# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.zip
解压并安装。
Nginx需要libpcre.so.1,但安装pcre后只有libpcre.so.0,所以先建立一个链接。
# locate libpcre
/lib64/libpcre.so.0
/lib64/libpcre.so.0.0.1
/usr/lib64/libpcrecpp.so.0
/usr/lib64/libpcrecpp.so.0.0.0
/usr/lib64/libpcreposix.so.0
/usr/lib64/libpcreposix.so.0.0.0
# ln -s /lib64/libpcre.so.0 /lib64/libpcre.so.1
安装Nginx
在官网下载nginx源码包
[root@one-663 software]# wget http://nginx.org/download/nginx-1.4.2.tar.gz
[root@one-663 software]# tar xvzf nginx-1.4.2.tar.gz
[root@one-663 software]# cd nginx-1.4.2/
[root@one-663 software]# ./configure --prefix=/etc/nginx
[root@one-663 software]# make && make install
[root@one-663 software]# cd /etc/nginx/sbin
[root@one-663 sbin]# ln nginx /usr/bin/
[root@one-663 sbin]# cd ..
[root@one-663 nginx]# nginx -h
nginx version: nginx/1.4.2
Usage: nginx [-?hvVtq] [-s signal] [-c filename] [-p prefix] [-g directives]
Options:
-?,-h : this help
-v : show version and exit
-V : show version and configure options then exit
-t : test configuration and exit
-q : suppress non-error messages during configuration testing
-s signal : send signal to a master process: stop, quit, reopen, reload
-p prefix : set prefix path (default: /etc/nginx/)
-c filename : set configuration file (default: conf/nginx.conf)
-g directives : set global directives out of configuration file
从中可以知道,nginx停止:nginx -s stop
重启:nginx -s reload (或者kill -HUP `cat /etc/nginx/logs/nginx.pid`)
测试配置文件是否正确:nginx -t
启动Nginx
[root@one-663 nginx]# nginx
在浏览器中输入该机器的IP地址。结果如下图
则安装成功。
参考:puppet Wiki