CentOS 下安装Nginx 0.8.30 + PHP 5.3.1+MySQL 5.5.0

lfs 2010-12-26

一时兴起,把电信的“企智通”拆了,换个40G硬盘。
在其它电脑上把CentOS5先装进硬盘,再装到企智通,开机,直接SSH上,哈哈!
接下来我就要安装Nginx 0.8.30 + PHP 5.3.1+MySQL 5.5.0。
开始部署,我只按步骤列命令了:
1.安装编译库,GD库
#yum -y install gcc gcc-c++ autoconf 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 e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers libmcrypt libmcrypt-devel pcre-devel

2.在/home建立mpn目录,进入/home/mpn目录,下载程序源代码
#mkdir /home/mpn
#cd /home/mpn
#wget http://nginx.org/download/nginx-0.8.30.tar.gz
#wget http://cn2.php.net/get/php-5.3.1.tar.gz/from/cn.php.net/mirror
#wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.0-m2.tar.gz/from/http://opensource.become.com/mysql/
#wget http://download.suhosin.org/suhosin-patch-5.3.1-0.9.8.patch.gz
#wget http://launchpad.net/php-fpm/master/0.6/+download/php-fpm-0.6~5.3.1.tar.gz
#wget http://www.monkey.org/~provos/libevent-1.4.13-stable.tar.gz

3.编译MySqL 5.5.0
#cd /home/mpn
#tar -xzvf mysql-5.5.0-m2.tar.gz
#cd mysql-5.5.0-m2
#./configure --prefix=/usr/local/mysql --localstatedir=/var/lib/mysql --with-comment=Source --with-server-suffix=-enterprise-gpl --with-mysqld-user=mysql --without-debug --with-big-tables --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=gbk,latin1 --with-pthread --enable-static --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --enable-assembler --without-ndb-debug --enable-local-infile --with-readline
//我就在这步出了错:/bin/rm: cannot remove `libtoolT': No such file or directory
解决方法:
# aclocal
# autoconf
# automake
# libtoolize --force
输入以上命令后,再执行以下:
#make && make install

4.在安装完MySQL之后,添加mysql用户
#useradd mysql #添加 mysql 用户
#cd /usr/local/mysql
#bin/mysql_install_db --user=mysql
#chown -R root:mysql . #设置权限,注意后面有一个 "."
#chown -R mysql /var/lib/mysql #设置 mysql 目录权限
#chgrp -R mysql . #注意后面有一个 "."
#cp share/mysql/my-medium.cnf /etc/my.cnf
#cp share/mysql/mysql.server /etc/rc.d/init.d/mysqld #开机自动启动 mysql。
#chmod 755 /etc/rc.d/init.d/mysqld
#chkconfig --add mysqld
#echo "/usr/local/mysql/lib" >> /etc/ld.so.conf && ldconfig

#/etc/rc.d/init.d/mysqld start #启动 MySQL
#bin/mysqladmin -u root password "123456" #设置Mysql的root密码
#service mysqld stop #关闭 MySQL

5.编译PHP 5.3.1
#cd /home/mpn
#tar -xvzf php-5.3.1.tar.gz
#gunzip suhosin-patch-5.3.1-0.9.8.patch.gz
#cd php-5.3.1
#patch -p 1 -i ../suhosin-patch-5.3.1-0.9.8.patch
#./buildconf --force #将其编译到静态内核中

在使用FastCGI方式运行php的时候,如果我们改变了php.ini的设置,就得重新启动php的fastcgi守护程序。如果你的系统负载 比较大的话,这个重启过程或许会让你的系统中断服务一段时间。php-fpm就是为了解决这个问题而诞生的,它可以在php的 fastcgi进程不中断的 情况下重新加载你改动过的php.ini。而且php-fpm可以不用再依赖其它的fastcgi 启动器,比如lighttpd的spawn-fcgi。
首先编译PHP-FPM需要安装的libevent。
#/cd /home/mpn
#tar -zxvf "libevent-1.4.13-stable.tar.gz"
#cd "libevent-1.4.13-stable"
#./configure && make
#make install

#export PHP_VER=5.3.1
#cd /usr/local/src
#tar -zxvf "php-fpm-0.6~$PHP_VER.tar.gz"
#"php-fpm-0.6-$PHP_VER/generate-fpm-patch"
#cd "php-$PHP_VER"
#patch -p1 < ../fpm.patch
#./buildconf --force

相关推荐