> CentOS > CentOS服务器 > 环境配置 >

CentOS下搭建nginx+php环境

一.下载安装nginx

Linux下安装nginx

1.安装依赖包

每次安装软件都必须,默认会少几个包,必须安装

yum install autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc

 

2.下载nginx和相关模块

nginx:可以去官网 http://nginx.org/ 下载最新版

wget http://nginx.org/download/nginx-1.7.8.tar.gz

 缓存模块ngx_cache_purge:可以去 http://labs.frickle.com/nginx_ngx_cache_purge/ 下载最新版本

wget http://labs.frickle.com/files/ngx_cache_purge-2.2.tar.gz
#解压
tar zxvf nginx-1.7.8.tar.gz
tar zxvf ngx_cache_purge-2.2.tar.gz

 

3.编译安装 

 
./configure --user=www --group=www \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-mail \
--with-mail_ssl_module \
--add-module=../ngx_cache_purge-2.2
make & make install
 

安装好之后,默认的nginx根目录为 /usr/local/nginx  

 

4.缓存配置例子

nginx配置的例子很多,就不赘述,直接问度娘吧.

举个使用缓存的例子:

proxy_cache_path   /tmp/cache   keys_zone=tmpcache:10m;
location / {
  proxy_pass        http://127.0.0.1:8000;
  proxy_cache        tmpcache;    proxy_cache_key        $uri$is_args$args;
  proxy_cache_purge    PURGE from 127.0.0.1;
}

不再赘述

 

二.下载php

 
#下载
wget http://bg2.php.net/distributions/php-5.6.7.tar.gz
#解压
tar zxvf php-5.6.7.tar.gz
#编译
./configure --prefix=/usr/local/php --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=/u01/mysql5.6.23 --enable-mbstring --with-mysqli=/u01/mysql5.6.23/bin/mysql_config
 

 

三.启动fastcgi代理模块 php-fpm

初始没有默认配置文件,用default创建一个

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

启动fpm模块

/usr/local/php/sbin/php-fpm

新版本的php-fpm已经不再支持[start|stop|restart]参数命令了,想要关闭重启,需要用kill pid管道方式

 
#php-fpm 启动:
/usr/local/php/sbin/php-fpm
#php-fpm 关闭:
kill -INT `cat /var/run/php-fpm/php-fpm.pid`
#php-fpm 重启:
kill -USR2 `cat /var/run/php-fpm/php-fpm.pid`
 

注意 /var/run/php-fpm/php-fpm.pid文件路径是php-fpm.conf定义的,如果没有定义,则用 ps -ef|grep php-fpm得到master进程的pid,然后kill -INT pid

 

四.配置nginx

 
server {
        listen       80;
        server_name  localhost;
        charset utf-8;
        root /u01/php/;
        index  index.html index.htm index.php;
        location / {
        }
        location ~ \.php$ {
        fastcgi_index   index.php;
        fastcgi_pass    127.0.0.1:9000;
        include         fastcgi_params;
        fastcgi_param   SCRIPT_FILENAME    $document_root$fastcgi_script_name;
        fastcgi_param   SCRIPT_NAME        $fastcgi_script_name;
        }
}
 

 



(责任编辑:IT)