|
Debian建设信息化校园二十四:利用源码构建最新版本的LAMP:apache2+php5
有人说不同的Linux发行版的本质就是不同的软件包安装方式,确实,发行版Redhat Debian Slackware Suse等都具有自己独特的软件包的文件格式和安装方式。Debian的软件包安装应该说是相当简便好用的一种,但是利用源码安装仍然是一种每个Linux爱好者应该掌握的手段。
简而言之,利用源码安装软件具有下列好处:
1 通用性:利用源码安装软件具有平台无关性和发行版本无关性,不论是Redhat,还是Debian,Slackware或是Suse,甚至是FreeBSD以及其他Unix,安装方式和过程都是一样的。
2 可以利用最新的软件发行版本。我们固然不鼓励没有实际需求的盲目追求新的软件版本,但是有时候,出于一些目的,如bug的修正,新功能的需求等,我们还是有必要安装实用新版本的软件的。
对Debian而言,使用源码安装新版本的软件更有一些重要的意义,因为Debian的软件哲学更强调软件的稳定性,讲究适用就好,所以有些软件颇有点古董的意味,我们有时候不得不自己用源码安装软件的新版本。
我因为想用PHP编写几个XML的程序,而新版本的PHP5对XML的处理与之前的PHP4 PHP3对XML的处理方式有很大不同,我不能采用即将过时的技术来些自己的程序,所以虽然PHP5没有正式发布,我也迫不及待地使用PHP5RC2。
3 更好地控制软件,更好地理解软件。采用各发行版本安装软件,用户常常连软件安装在哪里都不知道。用源码安装软件,通过自己设置各参数,可以更深入地理解软件。
4 可以按照自己的需求修改软件。当然,源码都给你连,你当然可以自己修改。但是这话说远连,如果你的兴趣在于修改源码的话,你也就没有兴趣也不屑于看我的这篇文章连。
利用源码安装软件一般需要注意以下几点:
1 用源码安装软件都需要系统内安装好编译构造工具。在Sarge基本系统安装好之后,再用tasksel选择安装C and C++就基本可以满足需要连。
2 安装的顺序一般是先配置再编译再安装,也就是:
#./configure
# make
# make install
要注意配置命令通常带有很多参数,要小心设置,这是软件安装成功与否的关键。
3 动手之前应该耐心地看看软件所提供的软件安装说明,一般是INSTALL README之类的文件。
下面我们开始apache2+php5的源码安装,现在两者的最新版本分别是:
apache-2.0.49 PHP5RC2
1 用浏览器到两者的官方主页下载源码:
httpd-2.0.49.tar.gz
php-5.0.0-RC2.tar.bz2
2 先安装apache2
2a 解压:
#tar zxvf httpd-2.0.49.tar.gz
2b 编译之前的配置:
#cd httpd-2.0.49
#./configure --prefix=/opt/apache --enable-track-vars --enable-cgi --with-config-file-path=/opt/apache/conf
这里几个配置参数简要说明于下:
--prefix=/opt/apache 指定把apahce安装到/opt/apache目录中,大家不妨养成一个好习惯,把所有自己安装的软件都放再一个专门目录下,方便管理,至少删除的时候也方便。
--enable-cgi 支持CGI;
--with-config-file-path=/opt/apache/conf 指定把apache的配制文件放在/opt/apache/conf中;比如httpd.conf配制文件就在这个目录中;
--enable-track-vars 为启动cookie的get/post等追踪功能
如果需要更多的选项,可能通过下面的命令来查看;
#./configure --help
2c编译:
#make
2d安装:
#make install
2e安装之后的配置文件的修改:
也就是修改/opt/apache/conf/httpd.conf文件,这里可以配置语言,设置网站的主目录,设置虚拟目录等等,具体参阅本系列文章的设置LAMP一节。
2f启动:
#/opt/apache/bin/apachectl start
2g测试:在浏览器的地址栏中键入:127.0.0.1或localhost或本机的IP或本机的域名(如果设置栏的话),这时候应该可以看到apache2的启动页面。
3 再安装php5
3a 解压:#tar jxvf php-5.0.0-RC2.tar.bz2
3b 编译前的配置:
#./configure --prefix=/opt/php --with-apxs2=/opt/apache/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/opt/php/etc
配置参数的设置与上面apache2的相似,不再解释。
这里遇到一点小麻烦,系统提示没有安装libxml2,其实是没有安装libxml2的一些开发文件,头文件等。先安装这些:
#apt-get install libxml2-*
然后再配置就可以了。
3c 编译: #make
3d 安装: #make install
3e 修改httpd.conf文件以使apache2支持php5,主要使要添加
LoadModule php5_module modules/libphp5.so
这一行,看来PHP5比PHP4进步了,这一行已经自动添加了。然后还要配置apache识别php文件名,还要配置php.ini文件,这些与以前的旧版本没有什么不同,不重复,参阅配置LAMP环境一文。 3f 测试:
先编写一个简单的php测试文件test1.php如下:
<? phpinfo() ?>
并放置再/opt/apache/htdoc目录下。
再在浏览器的地址栏内键入:127.0.0.1/test1.php
发现浏览器内显示出现在系统的apache2+php5运行正常,php5的 一些新特性如SQLite,SimpleXML等已经支持。
以后有时间再补写MySQL的相关部分。
本文的写作多有参考本论坛北南南北的相关文章,特此说明。 |
|