#Nginx安装
#环境准备
[root@E-host tools]# yum install pcre* openssl* -y
[root@E-host tools]# useradd nginx -s /sbin/nologin -M
[root@E-host tools]#  ./configure --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --prefix=/application/nginx
[root@E-host tools]# make
[root@E-host tools]# make install
#启动
[root@E-host tools]# /application/nginx/sbin/nginx -t
[root@E-host tools]# /application/nginx/sbin/nginx
#Mysql数据库安装,及初始化配置,启动
[root@E-host tools]# useradd mysql -s /sbin/nologin -M
[root@E-host tools]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz 
[root@E-host tools]# mv mysql-5.5.32-linux2.6-x86_64 /application/mysql
[root@E-host tools]#chown -R mysql.mysql /application/mysql/data/
[root@E-host mysql]cp support-files/my-small.cnf  /etc/my.cnf
[root@E-host mysql]# ./scripts/mysql_install_db  --user=mysql --basedir=/application/mysql/ --datadir=/application/mysql/data/
[root@E-host mysql]#\cp support-files/mysql.server /etc/init.d/mysqld  //脚本启动
[root@E-host mysql]#vim /etc/init.d/mysqld   //定义路径basedir= /application/mysql/  datadir= /application/mysql/data 
[root@E-host mysql]#/etc/init.d/mysqld start
[root@E-host mysql]#/application/mysql/bin/mysqladmin -u root password '123456'
mysql> show databases;
mysql> drop database test;
mysql> select user,host from mysql.user;
mysql> drop user 'root'@'::1';
mysql> drop user ''@'localhost';
PHP安装

装环境准备
yum install zlib libxml libjpeg freetype libpng gd  curl libiconv  zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel -y
 
检查是否安装上
rpm -qa zlib libxml libjpeg freetype libpng gd  curl libiconv  zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel

yum install gcc gcc++ 
呵呵,这样的话还是有组件没有安装完整的。再执行一下这个命令就可以解决问题。
yum install gcc gcc-c++ gcc-g77 

安装libiconv 
tar zxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix= /usr/local/libiconv
make && make install && cd ../

安装libmcrypt 2.5.8 
wget https://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
tar zxf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make && make install
cd ../

安装mcrypt-2.6.8
wget  
tar zxf mcrypt-2.6.8.tar.gz 
cd libmcrypt-2.5.8
/sbin/ldconfig
./configure LD_LIBRARY_PATH=/usr/local/lib
make && make install

#开始编译生成MAKEFILE文件
./configure --prefix=/application/php5.3.27 \
--with-mysql=/application/mysql \
--with-iconv-dir=/usr/local/libiconv \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--with-mcrypt \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--enable-short-tags \
--enable-static \
--with-xsl \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-ftp

ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/

cente6.8版本 不需要安装libiconv
编译参数解释:
--prefix=/usr/local/php : 设置安装路径
--with-apxs2=/usr/local/apache/bin/apxs : 编译共享的 Apache 2.0 模块
--with-config-file-path=/etc : 指定配置文件php.ini地址
--with-config-file-scan-dir=/etc/php.d : 指定额外的ini文件目录
--with-openssl : 编译OpenSSL支持
--with-zlib : 编译zlib支持
--enable-bcmath : 启用BC风格精度数学函数
--with-bz2 : BZip2支持
--with-gd : GD支持
--enable-gd-native-ttf : 启用TrueType字符串函数
--with-gettext : 启用GNU gettext支持
--with-mhash : mhash支持
--enable-mbstring : 启用支持多字节字符串
--with-mcrypt : 编译mcrypt加密支持
--enable-zip : 启用zip 读/写支持
--with-iconv=/usr/local/libiconv : iconv支持
--with-curl : CRUL支持
--enable-soap : SOAP支持
--enable-sockets : SOCKETS支持
--enable-ftp : FTP支持
--with-mysql=/usr/local/mysql : 启用mysql支持
--with-pdo-mysql=/usr/local/mysql : 启用pdo-mysql支持
--without-pear : 不安装PEAR
更多编译参数解释参考http://www.php.net/manual/zh/configure.about.php 或者 ./configure --help 查看。


#PHP配置
[root@A-host php-5.3.27]# ls php.ini-*
php.ini-development  //开发人员使用
php.ini-production    //生产环境使用
[root@E-host php-5.3.27]# pwd
/root/tools/php-5.3.27
[root@A-host php-5.3.27]# cp php.ini-production  /application/php/lib/php.ini

[root@E-host php]# cp etc/php-fpm.conf.default etc/php-fpm.conf
[root@E-host php]# mkdir /app/logs -p
[root@E-host php]# sbin/php-fpm -t
#启动FPM
[root@E-host php]# sbin/php-fpm
[root@E-host php]# netstat -lntup|grep php
tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN      11502/php-fpm
#设置开机启动

[root@E-host php]# vim /etc/rc.local 
/etc/init.d//mysqld start
/application/php/sbin/php-fpm
/application/nginx/sbin/nginx
#PHP与nginx 整合
[root@E-host]# vtm nginx/conf/nginx.conf
    server {
        listen       80;
        server_name  bbs.test.org;
            root   html/bbs;
            index  index.php index.html index.htm;
            access_log  logs/www_access.log;
            location ~ .*\.(php|php5)?$
                    {      
                      fastcgi_pass  127.0.0.1:9000;
                      fastcgi_index index.php;
                      include fastcgi.conf;
                    }
           }
[root@E-host application]# nginx/sbin/nginx -t
[root@E-host application]# nginx/sbin/nginx -s reload