centos6.2 源码安装lnmp 详细整理
下载编译所需软件
#yum update
#yum groupinstall -y "DevelopmentLibraries" "Development Tools"
#wget http://www.nginx.org/download/nginx-1.3.4.tar.gz
#wget http://www.php.net/get/php-5.4.5.tar.gz/from/this/mirror
#wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.22.tar.gz/from/http://mysql.he.net/
#wget http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz
#wget http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz
#wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
#wget http://lcmp.googlecode.com/files/libmcrypt-2.5.8.tar.gz
#wget http://vps.googlecode.com/files/mcrypt-2.6.8.tar.gz
#wget http://pecl.php.net/get/memcache-3.0.6.tgz
#wget http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz
#wget http://acelnmp.googlecode.com/files/eaccelerator-0.9.6.1.tar.bz2
#wget ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
#wget http://pecl.php.net/get/imagick-2.3.0.tgz
#wgethttp://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
一次性安装编译所需软件
#yum -y install gcc gcc-c++ autoconf libjpeglibjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-develzlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncursesncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidnlibidn-devel openssl openssl-devel openldap openldap-devel nss_ldapopenldap-clients openldap-servers make patch libtool libtool-ltdl
安装 nginx 服务器
安装pcre-8.31.zip
#unzip pcre-8.31.zip
#cd pcre-8.31
#./configure
#make
#make install
#cd ..
添加nginx用户和组
#groupadd nginx
#useradd -g nginx nginx -s /bin/false
下载 nginx-1.3.4.tar.gz
#wgethttp://www.nginx.org/download/nginx-1.3.4.tar.gz
#tar zxf nginx-1.3.4.tar.gz
#cd nginx-1.3.4
#./configure --prefix=/usr/local/nginx--user=nginx --group=nginx
#make
#make install
直接启动方式
#/usr/local/nginx/sbin/nginx
报错:
/usr/local/nginx/sbin/nginx:error while loading shared libraries: libpcre.so.1: cannot open shared objectfile: No such file or directory
从错误看出是缺少lib文件导致,进一步查看下
# ldd $(which /usr/local/nginx/sbin/nginx)
linux-gate.so.1 => (0x0071b000)
libpthread.so.0 => /lib/libpthread.so.0(0×00498000)
libcrypt.so.1 => /lib/libcrypt.so.1(0×00986000)
libpcre.so.1 => not found
libcrypto.so.6 => /lib/libcrypto.so.6(0×00196000)
libz.so.1 => /lib/libz.so.1 (0×00610000)
libc.so.6 => /lib/libc.so.6 (0x002d7000)
/lib/ld-linux.so.2 (0x006a8000)
libdl.so.2 => /lib/libdl.so.2 (0x008c3000)
可以看出 libpcre.so.1 => not found并没有找到,进入/lib目录中手动链接下
[root@localhost lib]# ln -s libpcre.so.0.0.1libpcre.so.1
然后在启动nginx ok了
[root@localhost lib]#/usr/local/nginx/sbin/nginx
[root@localhost lib]# ps -ef |grep nginx
root 9539 1 0 19:06 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
www 9540 9539 0 19:06 ? 00:00:00 nginx: worker process
为nginx提供sv启动脚本
#vim /etc/init.d/nginx
开机启动 php-fpm
#echo"/usr/local/php/sbin/php-fpm" >>/etc/rc.local
整合 nginx 与 php
#vi /usr/local/nginx/conf/nginx.conf
照下面图片改
改完后重启 nginx
#service nginx restart
或者
#killall -9 nginx
#/usr/local/nginx/sbin/nginx
#cd /usr/local/nginx/html
#vi test.php
输入以下内容:
<?php phpinfo();?>
在浏览器中访问: http://localhost/test.php