天天看点

LAMP架设

一、环境

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:

gd库、jpeg库、libpng库、zlib库、freetype:

<a href="http://www.libgd.org/releases/gd-2.0.35.tar.bz2">http://www.libgd.org/releases/gd-2.0.35.tar.bz2</a>

<a href="http://www.ijg.org/files/jpegsrc.v8.tar.gz">http://www.ijg.org/files/jpegsrc.v8.tar.gz</a>

<a href="http://ncu.dl.sourceforge.net/project/libpng/01-libpng-master/1.4.0/libpng-1.4.0.tar.gz">http://ncu.dl.sourceforge.net/project/libpng/01-libpng-master/1.4.0/libpng-1.4.0.tar.gz</a>

<a href="http://www.zlib.net/zlib-1.2.3.tar.bz2">http://sourceforge.net/projects/libpng/files/zlib/1.2.3/zlib-1.2.3.tar.bz2</a>

<a href="http://ncu.dl.sourceforge.net/project/freetype/freetype2/2.3.11/freetype-2.3.11.tar.bz2">http://ncu.dl.sourceforge.net/project/freetype/freetype2/2.3.11/freetype-2.3.11.tar.bz2</a>

php-mbstring:YUM方式安装。它用来使phpmyadmin能够正确识别字符串,它要在PHP之前安装,在编译PHP时,用--enable-mbstring启用mbstring

v<b>centos5.4:</b>

<b></b>

v<b>mysql:</b>

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:根据需要自行配置!

v<b>apache:</b>

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

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替换成模块的名称。模块名称的写法是有规定的,请参考帮助文档

关于MPM,用默认的prefork。php也不建议使用worker等线程性MPM

v<b>php:</b>

选择按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

注:帮助文档中说,一定要加上--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

注:--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在安装时自动加上的,没有的话就手动添加

手动添加以下内容:

&lt;FilesMatch \.php$&gt;

    SetHandler application/x-httpd-php

&lt;/FilesMatch&gt;

&lt;FilesMatch "\.ph(p[2-6]?|tml)$"&gt;

&lt;FilesMatch "\.phps$"&gt;

    SetHandler application/x-httpd-php-source

注:它是PHP5推荐的方法,这种方法比AddType更加安全

找到下面的部分,在index.html后面添加index.php:

&lt;IfModule dir_module&gt;

        DirectoryIndex  index.html

&lt;/IfModule&gt;

也有些配置文件中没有这个配置段,但一般会有DirectoryIndex这个关键字,找到它,把index.php添加进去即可

5) 配置php:根据需要自行配置!

6) 测试PHP是否安装成功:

    在apache的DocumentRoot目录中新建文件index.php,并在其中写入一行代码:&lt;?phpinfo();?&gt;

    然后在浏览器中输入http://localhost/index.php,或把Localhost换成你的主机IP;

    如果安装成功,你应该能看到PHP的系统信息。

v<b>zend:</b>

1) tar -zxvf Zend*

cd ZendOptimizer*

./install.sh

2) 按照提示一步步进行安装。

如果php.ini不在/etc目录下的话,会要求输入它的路径,比如我就要输入/usr/local/php5/lib

另外,Zend会自动备份php的配置文件,后缀为.bak    

vphpmyadmin:

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

<a href="http://down.51cto.com/data/2355871" target="_blank">附件:http://down.51cto.com/data/2355871</a>

本文转自 li_qinshan 51CTO博客,原文链接:http://blog.51cto.com/share/321328