安装包以及脚本地址
http://pan.baidu.com/share/link?shareid=56760&uk=3341197103
#!/bin/bash
##############################指定安装路径#############################
path_mysql=/usr/local/mysql
path_php=/usr/local/php
path_nginx=/usr/local/nginx
path_log=/var/log #####log统一制定到/var/log目录下
######################################################## 准备 ##############################################
mkdir /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
touch /etc/yum.repos.d/ftp.repo
echo -ne "[base]\nname=Server\nbaseurl=ftp://192.168.1.233/pub/yum/CentOS\ngpgcheck=0 " > /etc/yum.repos.d/ftp.repo
########################将YUM源修改成本地FTP源############################
yum -y install gcc gcc-c++ screen autoconf automake libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers libtiff libtiff-devel gettext gettext-devel pam pam-devel fontconfig-devel libXpm-devel libtool ncurses-devel flex bison
groupadd mysql
useradd -g mysql mysql
mkdir $path_log/nginx
mkdir $path_log/mysql
mkdir $path_log/php
###########创建LOG存放目录##################
chown -R mysql:mysql $path_log/mysql
cd /tmp/lnmp
rpm -ivh perl-DBI-1.52-2.el5.x86_64.rpm mysql-devel-5.0.77-4.el5_6.6.x86_64.rpm --force --nodeps
########################################################## 一些依赖包的安装##########################################
#cd /tmp/lnmp
tar -zxvf libiconv-1.14.tar.gz
cd libiconv-1.14
make clean
./configure --prefix=/usr/local
make
make install
cd ..
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
make clean
./configure
make
make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make
make install
cd ../..
tar -jxvf mhash-0.9.9.9.tar.bz2
cd mhash-0.9.9.9
make clean
./configure
make
make install
cd ..
ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.7 /usr/lib/libmcrypt.so.4.4.7
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1
ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
cp /tmp/lnmp/mhash-0.9.9.9/mhash-config.h /usr/local/include/
tar -zxvf mcrypt-2.6.4.tar.gz
cd mcrypt-2.6.4
make clean
/sbin/ldconfig
./configure
make
make install
cd ..
#################################### mysql安装 ################
#cd /tmp/lnmp
mkdir -p /data/mysql/var
tar -zxvf Percona-Server-5.1.58.tar.gz
cd Percona-Server-5.1.58/
make clean
./configure --prefix=$path_mysql --localstatedir=/data/mysql/var --with-charset=utf8 --with-extra-charsets=complex --with-pthread --enable-thread-safe-client --with-ssl --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --with-plugins=partition,federated,innobase,csv,myisam,innodb_plugin --enable-shared --enable-assembler
make && make install
rm -f /etc/my.cnf
cp /support-files/my-medium.cnf.sh /etc/my.cnf
sed -i "s!myisam_sort_buffer_size = 8M!\nlog-error =$path_log/mysql/mysql_error.log \nlog-bin=$path_log/mysql/binlog \nbasedir=$path_mysql \ndatadir=/data/mysql/var!" /etc/my.cnf
#####################修改MYSQL配置文件############################
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
ln -s $path_mysql/bin/* /usr/local/bin/
ln -s $path_mysql/lib/mysql/lib* /usr/lib/
chown -R root.mysql $path_mysql
chown -R mysql.mysql $path_mysql/var
chown -R mysql.mysql /data/mysql
$path_mysql/bin/mysql_install_db --basedir=$path_mysql --datadir=/data/mysql/var/ --user=mysql &
service mysqld start
cd ..
################################## PHP安装#################
tar -jxvf php-5.4.4.tar.bz2
gzip -cd php-5.2.14-fpm-0.5.14.diff.gz | patch -d php-5.4.4 -p1
cd ./php-5.4.4/
make clean
./configure --prefix=$path_php --with-config-file-path=$path_php/etc --with-mysql=$path_mysql --with-mysqli=$path_mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-production $path_php/etc/php.ini
cp $path_php/etc/php-fpm.conf.default $path_php/etc/php-fpm.conf
ln -s $path_php/bin/php /usr/bin/
##################################### PHP扩展包安装############################
cd ..
tar -zxvf memcache-2.2.5.tgz
cd memcache-2.2.5
make clean
$path_php/bin/phpize
./configure --with-php-config=$path_php/bin/php-config
make
make install
cd ..
ln -s $path_mysql/include/mysql/* /usr/local/include/
tar -zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2
make clean
$path_php/bin/phpize
./configure --with-php-config=$path_php/bin/php-config --with-pdo-mysql=$path_mysql
make
make install
cd ..
tar -jxvf ImageMagick-6.7.9-3.tar.bz2
cd ImageMagick-6.7.9-3
make clean
./configure --prefix=/usr/local/ImageMagick
make
make install
yum -y install gtk+-devel
export PKG_CONFIG_PATH=/usr/local/ImageMagick/lib/pkgconfig/
cd ..
tar -zxvf imagick-3.1.0RC2.tgz
cd imagick-3.1.0RC2
make clean
$path_php/bin/phpize
./configure --with-php-config=$path_php/bin/php-config --with-imagick=/usr/local/ImageMagick
make
make install
cd ..
sed -i 's#extension_dir = "./"#extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/"\nextension = "memcache.so"\nextension = "pdo_mysql.so"\nextension = "imagick.so"\n#' $path_php/etc/php.ini
sed -i 's#output_buffering = Off#output_buffering = On#' $path_php/etc/php.ini
sed -i "s#; always_populate_raw_post_data = On#always_populate_raw_post_data = On#g" $path_php/etc/php.ini
sed -i "s#; cgi.fix_pathinfo=0#cgi.fix_pathinfo=0#g" $path_php/etc/php.ini
sed -i 's#extension_dir = "./"#extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/"\nextension = "memcache.so"\nextension =
"pdo_mysql.so"\nextension = "imagick.so"\n#' $path_php/etc/php.ini
sed -i 's#output_buffering = Off#output_buffering = On#' $path_php/etc/php.ini
sed -i "s#; always_populate_raw_post_data = On#always_populate_raw_post_data = On#g" $path_php/etc/php.ini
sed -i "s#; cgi.fix_pathinfo=0#cgi.fix_pathinfo=0#g" $path_php/etc/php.ini
########################################## nginx安装###############
tar -zxvf pcre-8.10.tar.gz
cd pcre-8.10/
make clean
./configure
make && make install
cd ../
tar -zxvf nginx-1.2.1.tar.gz
cd ./nginx-1.2.1/
./configure --prefix=$path_nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
touch $path_nginx/html/index.php
echo -ne "<?php\nphpinfo();\n?>" > $path_nginx/html/index.php
sed -i "s/index.html index.htm;/index.php &/" $path_nginx/conf/nginx.conf
sed -i "47 a#\nlocation ~ \\\.php$ {\nfastcgi_pass 127.0.0.1:9000;\nfastcgi_index index.php;\nfastcgi_param SCRIPT_FILENAME /usr/local/nginx/html/\$fastcgi_script_name;\ninclude fastcgi_params;\ninclude fastcgi.conf;}#" $path_nginx/conf/nginx.conf
echo "$path_nginx/sbin/nginx" >> /etc/rc.d/rc.local
##################################### 启动 ###########################
killall nginx
killall php-fpm
$path_php/sbin/php-fpm
$path_nginx/sbin/nginx
本文是基于张宴版本的LNMP的修改版
张宴LNMP博客http://blog.s135.com/nginx_php_v6/