LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1970|回复: 3

Debian建设信息化校园二十四:利用源码构建最新版本的LAMP:apache2+php5

[复制链接]
发表于 2004-5-19 10:18:18 | 显示全部楼层 |阅读模式
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的相关部分。
    本文的写作多有参考本论坛北南南北的相关文章,特此说明。
发表于 2004-5-19 14:23:11 | 显示全部楼层
php5 ...
... you are treating your school network as an experiment.
 楼主| 发表于 2004-5-19 14:50:44 | 显示全部楼层
这只是自己实验一下,真正做一个网络,当然不会这样冒险.
发表于 2004-11-27 09:59:33 | 显示全部楼层
php5还没有在商业上大量使用,安全性稳定性有待考证,而且和apache2结合不是一个好的方案,官方建议商用还是用apache1,apache2和php5结合还没有经过大量测试。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表