您所在的位置:读书频道 > 操作系统 > Linux > 18.3.1 LAMP所需软件与其结构

18.3.1 LAMP所需软件与其结构

2007-12-05 13:56 鸟哥 机械工业出版社华章公司 字号:T | T
一键收藏,随时查看,分享好友!

《鸟哥的Linux私房菜——服务器架设篇》(第二版)第18章的主要介绍的是WWW服务器。本文主要介绍的是LAMP所需软件与其结构。

AD:

18.3  WWW(Apache)服务器基本设置

从前面的说明中可知,要在Linux上实现网页服务器(WWW)需要Apache这个服务器软件。不过Apache仅能提供最基本的静态网站数据而已,想要实现动态网站的话,最好还是需要PHP与MySQL的支持。所以下面我们将会以LAMP(Linux+Apache+MySQL+PHP)作为安装与设置的介绍。

18.3.1  LAMP所需软件与其结构

既然我们是Linux操作系统,而且使用的是完全兼容于Red Hat Enterprise Linux的CentOS版本,那当然只要利用CentOS本身提供的Apache、PHP、MySQL即可。建议您不要自行利用Tarball安装LAMP服务器。因为自行安装不但操作麻烦,而且也不见得比系统默认的软件稳定。除非您有特殊的需求(例如您的某些Apache外挂程序需要较高的版本,或者是PHP、MySQL有特殊版本的需求),否则请使用yum来进行软件的安装即可。

那么LAMP需要什么软件呢?您必须知道的是,PHP是挂在Apache下面执行的,而我们要用网页的PHP程序控制MySQL,您的PHP就需要支持MySQL的模块才行。所以您至少需要下面几个软件:

• httpd。
• mysql。
• mysql-Server。
• php。
• php-devel(这个与PHP加速软件有关)。
• php-mysql。

要注意,Apache目前有几种主要版本,包括1.3.x、2.0.x以及2.2.x等,在1.3.x以前的版本通常取名为Apache,2.x以后则称为HTTPd了。请与您的distribution比较一下。至于CentOS 4.x则提供Apache 2.0.x这个版本。如果您没有安装,请直接使用yum或者是原版光盘来安装:

[root@linux ~]# yum install httpd mysql-Server php php-devel php-mysql

先来了解一下Apache 2.0.x这个版本的相关结构,这样才能够知道如何处理我们的网页数据。

• /etc/httpd/conf/httpd.conf(主要配置文件):最主要的配置文件,不过很多其他的distribution都将这个文件拆成数个小文件,分别管理不同的参数。但是主要配置文件还是以这个文件名为主。您只要找到这个文件名就知道如何设置了。

• /etc/httpd/conf.d/*.conf(很多的额外参数文件,扩展名是.conf):这是CentOS的特色之一,如果您不想修改原始配置文件httpd.conf的话,那么可以将您自己的额外参数文件独立出来,例如您想要有自己的额外设置值,可以将它写入/etc/httpd/conf.d/vbird.conf(注意,扩展名一定是.conf才行),而启动Apache时,这个文件就会被读入到主要配置文件中。这有什么好处?好处就是当您系统升级的时候,几乎不需要更改原本的配置文件,只要将自己的额外参数文件复制到正确的地点即可,维护更方便。

• /usr/lib/httpd/modules/:Apache支持很多的模块,所有您想要使用的模块默认都放置在此目录中。

• /var/www/html/:这是CentOS默认的“首页”所在目录。当您输入“http://localhost”时所显示的数据所在。

• /var/www/error/:如果因为主机设置错误,或者是浏览器端要求的数据错误,在浏览器上出现的错误信息就以这个目录的默认信息为主。

• /var/www/icons/:这个目录提供Apache默认给予的一些小图标,可以随意使用。当输入“http://localhost/icons/”时所显示的数据所在。

• /var/www/cgi-bin/:默认给一些可执行的CGI(网页程序)程序放置的目录;当您输入“http://localhost/cgi-bin/”时所显示的数据所在。

• /var/log/httpd/:默认的Apache日志文件都放在这里,对于流量比较大的网站来说,这个目录要很小心,因为以鸟哥网站的流量来说,一个星期的日志文件数据可大到500MBytes至1GBytes左右,所以您务必要修改一下logrotate,从而压缩日志文件。

• /usr/sbin/apachectl:这是Apache的主要执行文件,这个执行文件其实是shell script,它可以主动检测系统上的一些设置值,好让您启动Apache时更简单。

• /usr/sbin/httpd:这是主要的Apache二进制执行文件。

• /usr/bin/htpasswd(Apache密码保护):当您想要登录某些网页时,需要输入账号与密码。那Apache本身就提供一个最基本的密码保护方式,该密码的产生就是通过这个指令实现的。相关的设置方式我们会在WWW进阶设置中说明。

至于MySQL方面,您需要知道的几个重要目录与文件有以下几个。

• /etc/my.cnf:这是MySQL的配置文件,包括您想要进行MySQL数据库的最佳化,或者是针对MySQL进行一些额外的参数指定,都可以在这个文件里实现。

• /var/lib/mysql/:这个目录是MySQL数据库放置的位置。当启动任何MySQL的服务时,请务必记得在备份时,将此目录完整地备份下来。

另外,在PHP方面,应该了解以下几个文件。

• /usr/lib/httpd/modules/libphp4.so:PHP提供给Apache使用的模块。这是关系我们能否在Apache网页上面设计PHP程序语言的最重要的文件。

• /etc/httpd/conf.d/php.conf:您要不要手动将该模块写入httpd.conf中呢?不需要,因为系统已经主动将PHP设置参数写入到这个文件中了。而这个文件会在Apache重新启动时被读入。

• /etc/php.ini:这是PHP的主要配置文件,包括PHP能不能允许用户上传文件?能不能允许某些低安全性的标志等,都在这个配置文件中设置。

• /etc/php.d/mysql.ini、/usr/lib/php4/mysql.so:PHP是否可以支持MySQL接口就看这两个文件了。这两个文件是由php-mysql软件提供的。

• /usr/bin/phpize、/usr/include/php/:如果您以后想要安装类似PHP加速器以让浏览速度加快的话,那么这个文件与目录就需要存在,否则加速器软件无法编译成功。这两个数据也是php-devel软件所提供的。

上面提到的是Red Hat系统(RHEL、CentOS、FC)所需的数据,如果是SuSE或其他版本的数据,请依照您的distribution管理软件的指令(rpm或dpkg)去查询一下,应该就能够知道各个重要数据放置在哪里了。这些数据很重要,您必须对放置的地点很清楚才行。

【责任编辑:董书 TEL:(010)68476606】

回书目   上一节   下一节

分享到:

  1. Linux服务器配置全程实录
  2. 揭秘--优秀PPT这样制作

热点职位

更多>>

热点专题

更多>>
  • 互联网运营之道
    互联网运营之道
    《互联网运营之道》内容由运营方法论切入,包括运营的
  • 奔跑吧Ansible
    奔跑吧Ansible
    Ansible是近年用户量急速蹿升的开源配置管理工具。在A
  • Redis实战
    Redis实战
    本书深入浅出地介绍了Redis的5种数据类型,并通过多个

读书

Microsoft SQL Server 2005技术内幕:T-SQL程序设
SQL Server 2005微软官方权威参考手册。 是Inside Microsoft SQL Server 2005系列书中的第一本,SQL Server类的顶尖之作。 全

最新热帖

更多>>

51CTO旗下网站

领先的IT技术网站 51CTO 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 51CTO学院 区块链第一聚合媒体 zhijiapro