1.安装pcre-devel
yum -y install gcc gcc-c++ rpm-build MySQL* php* automake autoconf libtool make --skip-broken
pcre是Nginx 所需的pcre-devel库,安装pcre库是为了让Nginx支持HTTPRewrite模块
pcre下载地址:
具体下载目录在 /2013年资料/8月/17日/CentOS 6.4安装配置Nginx+Pcre+php-fpm
[root@vb01 src]#unzip pcre-8.33.zip
[root@vb01 src]#cd pcre-8.33
[root@vb01 pcre-8.33]#./configure
[root@vb01 pcre-8.33]#make
[root@vb01 pcre-8.33]#make install
2. 安装nginx
下载地址:
Nginx 的详细介绍:请点这里
Nginx 的下载地址:请点这里
相关阅读:
这里下载的是nginx-1.4.2稳定版
[root@vb01 src]#tar zxvf nginx-1.4.2.tar.gz
[root@vb01 src]# cd nginx-1.4.2
[root@vb01 nginx-1.4.2]# ./configure --help #查看可使用的模块,比如:
--prefix=PATH set installation prefix # 设置安装目录为PATH
--with-http_stub_status_module enable ngx_http_stub_status_module #用来启用NginxStatus功能,以监控Nginx的当前状态。
--with-google_perftools_module enable ngx_google_perftools_module #使Nginx支持google-perftools的模块,使用TCMALLOC优化Nginx的性能时会用到。
[root@vb01 nginx-1.4.2]# ./configure --with-http_stub_status_module --prefix=/usr/local/nginx
[root@vb01 nginx-1.4.2]# make
[root@vb01 nginx-1.4.2]# make install
3.Nginx的全局配置
Nginx的整个配置配置文件是以block的形式组织的,每个block一般以一个大括号“{}”来表示,block可以分为几个层次,整个配置文件中main指令位于最高层,在main层下面可以有Events,HTTP等层级,而在HTTP层中又包含server层,即server block,server block中又可分为location层,并且一个server block中可以包含多个location block.
[root@vb01 conf]# vi /usr/local/nginx/conf/nginx.conf
user nobody; #设置Nginx Worker进程运行的用户,默认是nobody不用管。
worker_processes 1; #指定Nginx开启的进程数,默认个就够了
#error_log logs/error.log;
error_log logs/error.log notice; #定义错误日志文件输出文件和级别
#error_log logs/error.log info;
pid logs/nginx.pid; #Nginx进程ID存储的位置
google_perftools_profiles /tmp/tcmalloc;
events {
worker_connections 1024; #指定连接数上限
}
4.http模块的配置
http {
include mime.types; #配置文件包含文件的设定,特别对于多虚拟主机的设置时可以减小主配置文件的复杂度。
default_type application/octet-stream; #设定默认类型为二进制流,当文件类型未定义时使用这种类型,例如在没有配置PHP环境时,Nginx是不予解析的,此时用浏览器访问PHO文件就会出现下载窗口。
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#上面这段代码设置日志的格式,默认就行。
access_log logs/access.log main;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
#location用于匹配网页位置
location / {
root html; #设置网页根目录
index index.html index.htm; #index设置默认首页地址
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log logs/access.log main;
sendfile on;
keepalive_timeout 65;