一、
环境
centos5.4+ mysql5.1.42+ httpd2.2.14+php5.3.1+zend3.3.3+phpmyadmin3.2.5
二、
安装及配置
软件下载地址:
mysql-server
、
mysql-client
、
mysql-shared
、
mysql-devel
:
ftp://mirror.anl.gov/pub/mysql/Downloads/MySQL-5.1/MySQL-server-community-5.1.42-0.rhel5.i386.rpm *
必须安装
ftp://mirror.anl.gov/pub/mysql/Downloads/MySQL-5.1/MySQL-client-community-5.1.42-0.rhel5.i386.rpm *
必须安装
ftp://mirror.anl.gov/pub/mysql/Downloads/MySQL-5.1/MySQL-shared-community-5.1.42-0.rhel5.i386.rpm *
共享库,大多数情况下都需要安装
ftp://mirror.anl.gov/pub/mysql/Downloads/MySQL-5.1/MySQL-devel-community-5.1.42-0.rhel5.i386.rpm *
开发包,大多数情况下都需要安装
apache
:
http://apache.freelamp.com/httpd/httpd-2.2.14.tar.gz
gd
库、
jpeg
库、
libpng
库、
zlib
库、
freetype
:
http://www.libgd.org/releases/gd-2.0.35.tar.bz2
http://www.ijg.org/files/jpegsrc.v8.tar.gz
http://ncu.dl.sourceforge.net/project/libpng/01-libpng-master/1.4.0/libpng-1.4.0.tar.gz
http://sourceforge.net/projects/libpng/files/zlib/1.2.3/zlib-1.2.3.tar.bz2
http://ncu.dl.sourceforge.net/project/freetype/freetype2/2.3.11/freetype-2.3.11.tar.bz2
libxml2
:
ftp://xmlsoft.org/libxml2/libxml2-2.7.6.tar.gz
php
:
http://am.php.net/distributions/php-5.3.1.tar.bz2
zend
:
http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
phpmyadmin: http://ncu.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.2.5/phpMyAdmin-3.2.5-all-languages.tar.bz2
php-mbstring
:
YUM
方式安装。它用来使
phpmyadmin
能够正确识别字符串,它要在
PHP
之前安装,在编译
PHP
时,用
--enable-mbstring
启用
mbstring
v
centos5.4:
v
mysql:
1)
rpm --ivh MySQL-server-* *
其它几个软件包的安装过程与之雷同
2)
运行
/usr/bin/mysql_secure_installation
,按照提示进行操作
3)
把
/usr/share/mysql
下的
my-medium.cnf
复制到
/etc
中,并更名为
my.cnf。
注:根据实际情况选择复制
my-small.cnf
、
my-medium.cnf
或者
my-large.cnf
4)
在
shell
中输入
mysql –u root –p
进行测试。
注:
RPM
安装
mysql
,
mysql
是自动运行的,如果是源码包安装的话,在测试前要手动启动
mysql
5)
配置
mysql
:根据需要自行配置!
RPM
和源码包安装是有区别的,你若是用源码包安装
mysql
,刚才的步骤对你的帮助不大。源码包安装
mysql
可参考
mysql
的在线帮助文档:
http://dev.mysql.com/doc/refman/5.1/zh/installing.html#installing-source
。
RPM包和源码包不但安装过程不同,安装后的路径也不同。
RPM
和源码包安装时的路径以及它们的差异可参考在线帮助文档:
http://dev.mysql.com/doc/refman/5.1/zh/installing.html#installation-layouts
。
v
apache:
1)
tar –zxvf httpd-*
cd httpd-2.2.14
./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=most
make
make install
2)
在
shell
中输入
/usr/bin/local/apache2/bin/apachectl start
,启动
apache
3)
本地输入
http://localhost
,或远程主机上输入服务器
IP
进行测试,若页面显示
It works!
,就表明它已经正常运行了
4)
修改
/etc/rc.d/rc.local
文件,在其末尾加上
/usr/local/apache2/bin/apachectl start
,让
apache
自动启动
5)
配置
apache
:根据需要自行配置!
apache2
和以前版本的configure
参数有所不同,要注意!比如说,这里的
--enable-so
就等同于较早版本的
--enable-module=so
,功能是一样的,就是让
apache
支持
DSO
。如果在编译
apche2
的时候输入
--enable-module=so
会出现命令错误的提示,很不幸,我就犯过这样的错误
--enable-mods-shared=most
是让
apache
的大多数模块以
DSO
的方式运行,这是一个懒惰的做法。可以根据自己的需要或喜好选择以
DSO
方式运行的模块,命令为
--enable-MODULE=shared
,把
MODULE
替换成模块的名称。模块名称的写法是有规定的,请参考帮助文档
这里有一份
apache2
的
configure
命令的翻译文档,感谢译者!
http://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/programs/configure.html
关于
MPM
,用默认的
prefork。
php
也不建议使用
worker
等线程性
MPM
v
php:
安装
PHP
之前最好先了解下
PHP
的模块:
http://www.php.net/manual/en/extensions.membership.php
选择按
Membership
分类进行查看,核心扩展模块、绑定扩展模块、外部扩展模块;点开相应的模块,里面有它们的说明、依赖、安装方法等。
我们找到
GD
模块,进去看一下。总的来说,
PHP
自带了
GD
库,但是版本较低,而为了让
GD
能够处理更多的图片和字体格式,我们还需要其它的库文件,主要有:
jpeg
库、
png
库、
freetype2
库,
png
又需要
zlib
库文件。
另外,我没办法按照帮助文档给出的地址下载
jpeg
的库文件,自己又找了其它的地址。最后别忘了
yum -y install php-mbstring
。
注意:
GD
要在
PHP
之前安装,而它的外部库要在其之前安装,
zlib
又要在
libpng
之前安装。它们的安装过程无需多言,只把
zlib
、
jpeg
和
GD
说一下。
1)
tar --jxvf zlib-*
cd zlib-1.2.3
./configure
make
make install
注:zlib的安装不要用--prefix指定安装目录,否则在安装libpng的时候会出现error: zlib not installed zlib
2)
tar --zxvf jpegsrc*
cd jpeg-8
./configure --prefix=/usr/local/jpeg --enable-shared
make
make install
注:帮助文档中说,一定要加上--enable-shared参数,否则会出错
3)
安装
GD:
tar --jxvf gd-*
cd gd-2.0.35
./configure --prefix=/usr/local/gd
--with-jpeg-dir=/usr/local/jpeg
--with-png-dir=/usr/local/libpng
--with-freetype-dir=/usr/local/freetype
make
make install
注:--with-jpeg-dir=…后面那个dir不要省略!其它几个也是,后面安装PHP时也是这样
4)
安装
PHP:
一、
tar --jxvf php-*
cd php-5.3.1
./configure --prefix=/usr/local/php5
--with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/share/mysql
--with-jpeg-dir=/usr
--with-png-dir=/usr
--with-freetype-dir=/usr
--with-gd --enable-exif
--enable-mbstring
--enable-soap
--with-mcrypt
--with-curl=/usr/local/curl
--with-libxml-dir=/usr/local/libxml2 /bin/xml2-config
--without-pdo-sqlite
--without-sqlite
----------------------------------------------------------------------
cp php.ini-development /usr/local/php5/lib/php.ini
在指定
libxml
时,
--with-libxml-dir=/usr/local/libxml2/bin/xml2-config
,出现了错误提示,说找不到
xml2-cofig
,所以省略了后面的部分。
php.ini-development
这个文件名没错,网上有很多文章写的都是
php.ini-dist
,要注意分清了:
php5
里的配置文件名称是
php.ini-development
。
二、让
apache
支持
php
:
查找
httpd.conf
文件,应该有
LoadModule php5_module modules/libphp5.so
这一句,它是
PHP
在安装时自动加上的,没有的话就手动添加
手动添加以下内容:
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
注:它是PHP5推荐的方法,这种方法比AddType更加安全
找到下面的部分,在index.html后面添加
index.php
:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
也有些配置文件中没有这个配置段,但一般会有DirectoryIndex这个关键字,找到它,把index.php添加进去即可
5)
配置
php
:根据需要自行配置!
6) 测试PHP是否安装成功:
在apache的DocumentRoot目录中新建文件index.php,并在其中写入一行代码:<?phpinfo();?>
然后在浏览器中输入http://localhost/index.php,或把Localhost换成你的主机IP;
如果安装成功,你应该能看到PHP的系统信息。
v
zend:
1)
tar -zxvf Zend*
cd ZendOptimizer*
./install.sh
2)
按照提示一步步进行安装。
如果
php.ini
不在
/etc
目录下的话,会要求输入它的路径,比如我就要输入
/usr/local/php5/lib
另外,
Zend
会自动备份
php
的配置文件,后缀为
.bak
v
phpmyadmin:
1)
tar -jxvf phpMyAdmin*
2)
mv phpMyAdmin-3.2.5-all-languages /usr/local/apache2/htdocs/phpmyadmin
3)
cp config.sample.inc.php config.inc.php
4)
配置
config.inc.php