本文主要介绍nginx1.8的源码安装php5.5,外加waf环境的配置。php
建立nginx用户和组
groupadd -r nginx
useradd -r -g nginx -s /bin/false -M nginxmysql
安装依赖包nginx
yum install gcc openssl-devel pcre-devel zlib-devel
配置lua环境
tar -zxvf LuaJIT-2.0.3.tar.gz
cd LuaJIT-2.0.3
make
make install
由于安装在缺省路径,因此LuaJIT对应的lib,include均在/usr/local目录里。
修改环境变量
export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-2.0
export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATHweb
在/etc/ld.so.conf中加入/usr/local/lib这一行,保存以后,再运行:/sbin/ldconfig –v更新一下。sql
下载ngx_devel_kit,nginx_lua_module解压到指定目录apache
编译Nginx
tar -vxf nginx-1.8.0.tar.gzphp-fpm
cd nginx-1.8.0
./configure --prefix=/usr/local/nginx\
--user=nginx\
--group=nginx\
--with-http_ssl_module\
--with-http_gzip_static_module\
--with-http_addition_module\
--with-http_sub_module\
--with-http_stub_status_module\
--add-module=/root/lua-nginx-module-0.9.15\
--add-module=/root/ngx_devel_kit-0.2.19lua
make && make installspa
配置php环境,经过yum安装
yum install -y php php-fpm php-mysqlnetstat -ltunpip
默认的php版本通常比较低,CentOs 6.x可经过配置yum源安装php5.5
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
yum install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64 php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64 php55w-pdo.x86_64
cd nginx-1.8.0
./configure --prefix=/usr/local/nginx\
--user=nginx\
--group=nginx\
--with-http_ssl_module\
--with-http_realip_module\
--with-http_gzip_static_module\
--with-http_addition_module\
--with-http_sub_module\
--with-http_stub_status_module\
--add-module=/home/setup/lua-nginx-module-0.9.15\
--add-module=/home/setup/ngx_devel_kit-0.2.19
make && make install
/usr/local/nginx/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
自此nginx的安装基本完成。下面配置waf
cp ngx_lua_waf-master /usr/local/nginx/conf/waf
nginx的nginx.conf配置文件http模块下面增长
#nginx waf
lua_package_path "/usr/local/nginx/conf/waf/?.lua";
lua_shared_dict limit 10m;
init_by_lua_file /usr/local/nginx/conf/waf/init.lua;
access_by_lua_file /usr/local/nginx/conf/waf/waf.lua;
自此waf配置完成。不要忘记修改 vi /etc/php-fpm.d/www.conf中的user,和group都是nginx。默认是apache