欢迎光临
我们一直在努力

Linux Apache Web 服务器-网管专栏,WEB服务

建站超值云服务器,限时71元/月

一、什么是www服务

现在在internet上最热门的服务之一就是环球信息网www(world wide web)服务,web已经成为很多人在网上查找、浏览信息的主要手段。www是一种交互式图形界面的internet服务,具有强大的信息连接功能。它使得成千上万的用户通过简单的图形界面就可以访问各个大学、组织、公司等的最新信息和各种服务。

商业界很快看到了其价值,许多公司建立了主页,利用web在网上发布消息,并反它作为各种服务的界面,如客户服务、特定产品和服务的详细说明、宣传广千以及是渐增长的产品销售和服务。商业用途促进了环球信息网络的迅速发展。

如果你想通过主页向世界介绍自己或自己的公司,就必须将主页放在一个web服务器上,当然你可以使用一些免费的主页空间来发布。但是如果你有条件,你可以注册一个域名,申请一个ip地址,然后让你的isp将这个ip地址解析到你的linux主机上。然后,在linux主机上架设一个web服务器。你就可以将主页存放在这个自己的web服务器上,通过它把自己的主页向外发布。

www是基于客户机/服务器方式的信息发现技术和超文本技术的综合。www服务器通过html超文本标记语言把信息组织成为图文并茂的超文本;www浏览器则为用户提供基于http超文本传输协议的用户界面。用户使用www浏览器通过internet访问远端www服务器上的html超文本,如下图所示:

http协议

www浏览器 <—–> www服务器

在www的客户机/服务器工作环境中,www浏览器起着控制作用,www浏览器的任务是使用一个url(internet地址)来获取一个www服务器上的web文档,解释这个html,并将文档内容以用户环境所许可的效果最大限度地显示出来。整个流程如下:

www浏览器根据用户输入的url连到相应的远端www服务器上;

取得指定的web文档;

断开与远端www服务器的连接。

也就是说,平时我们在浏览某个网站的时候是每取一个网页建立一次连接,

读完后马上断开;当需要另一个网页时重新周而复始。

二、www服务器软件的比较和选择

目前,在世界各地有许多公司和学术团体,根据不同的计算机系统,开发出不同的www服务器,如apache、cern httpd、microsoft internet information system、ncsa httpd、plexus httpd、website等。在unix/linux系统中常用的有:cern、ncsa、apache三种

cern httpd

这是最早期的www服务器软件,用c语言编写,现在功能有限,用户在

缩减中。有兴趣的话可以在:ftp://ftp.w3.org/pub/www/bin中找到它。

ncsa httpd

这是在www服务器发展初期,美国国家超级计算机应用中心(ncsa)

在1995年创建的当时一流的www服务器。它也是用c语言编写的,程序小、速度快。但是现在ncsa www服务器的主要开发人员已经离开了ncsa,这个服务器项目已经停顿了。相信大家不会选择一个没有发展的www服务器软件吧!

当然,由于它的特殊历史地位,相信使用它的人现在还不少。如果你需要可以在ftp://ftp.ncsa.uiuc.edu获取它。

apache

根据著名的www服务器调查公司所作的调查,世界上百分之五十以上的

www服务器都在使用apache,是世界排名第一的web服务器。

apache的诞生极富有戏剧性。当ncsa www服务器项目停顿后,那些使用ncsa www服务器的人们开始交换他们用于该服务器的补丁程序,他们也很快认识到成立管理这些补丁程序的论坛是必要的。就这样,诞生了apache group,后来这个团体在ncsa的基础上创建了apache。

apache的主要特征是:

. 可以运行上所有计算机平台;

. 支持最新的http 1.1协议;

. 简单而强有力的基于文件的配置;

. 支持通用网关接口cgi;

. 支持虚拟主机;

. 支持http认证;

. 集成perl脚本编程语言;

. 集成的代理服务器;

. 具有可定制的服务器日志;

. 支持服务器端包含命令(ssi)

. 支持安全socket层(ssl)

. 用户会话过程的跟踪能力;

. 支持fastcgi;

. 支持java servlets。

我们还有什么理由放弃这个功能强大而且前途光明的www服务器软件呢?

三、安装apache

下面我们就开始漫漫征服apache之旅,通过循序渐进的需求实例,一步步地学习使用apache,从入门到精通。

3.1 系统需求

运行apache不需要太多的计算资源。它在有6-10mb硬盘空间和8mb ram的linux系统上运行得很好。然而,只运行apache可能不是你想做的事情。更可能的是,你想运行apache来提供www服务、启动cgi进程以及充分利用所有www能够提供的令人惊奇的功能。在这种情况下,你需要提供反映负载要求的额外的磁盘空间和内存空间。也就是说,如果仅仅是启动www服务并不需要太多的系统资源,但是想要能为大量的客户提供服务就需要更多的系统资源。

3.2 获取软件

你可以在http://www.apache.org中获得apache的最新版。而几乎所有的linux发行版中均包含有apache软件包,你也可以直接使用它。

需要注意的是,apache软件包有两种:一种是源代码,下载后需要自己重新编译;另一种是可执行文件,下载后只需解压就可以使用。

3.3 安装软件

你可以通过以下三种方法安装apache服务器。

1.如果你安装的linux版本中带用apache的话,就在选择所要安装的服务器的时候,将httpd这个服务选上,linux安装程序将自动完成apache的安装工作,并做好基本的配置。

2.使用可执行文件软件包,这比较适合那些对编译工作不是太熟悉的初级用户,因为它相对比较简单。

下载软件包apache_1.2.4.e.tar.gz

tar xvzf apache_1.2.4.e.tar.gz

这就完成了安装工作,简单吧!

如果你使用的是redhat linux的话,你也可以下载apache_1.2.4.rpm软件安

装包,然后使用rpm –ivh apache_1.2.4.rpm命令安装。

3.如果你想把apache服务器充分利用起来的话,就一定要自己编译apache

定制其功能。

下载包含apache源代码的软件包apache_1.2.4.tar.gz;

然后用tar命令将它解开;

将当前目录改变为apache源代码发行版的src目录;

将配置样本文件(configuration.tmpl)复制为configuration文件;

编辑configuration文件中的配置选项:

makefile配置选项:一些编译选项:

. “cc=”一行指定用什么编译软件编译,一般为“cc=gcc”;

. 如果需要将额外的标志(参数)指定给c编译软件,可以使用:

extra_cflags=

extra_lflags=

. 如果系统需要特殊的库和包含文件,可以在这里指定它们:

extra_libs=

extra_includes=

. 如果你要改变代码优化设置的话,你须将下面一句去掉注释,然

后改成你所需要的值:

#optim=-o2

rule配置选项:用来决定需要什么功能,一般情况下无需改变。

模块配置:模块是apache的组成部分,它为apache内核增加新功能。通过使用模块配置,可以自定义在apache服务器中需要什么功能,这个部分也是apache灵活性的表现。模块配置行如下所示:

addmodule modules/standard/mod_env.o

如果你需要apache服务器具备什么功能,就将那个模块用addmodule语句加到配置文件configuration中去。

下表列出了apache的模块功能:

模块名 功能 缺省
mod_access 提供基于主机的访问控制命令 y
mod_actions 能够运行基于mime类型的cgi脚本或http请求方法 y
mod_alias 能执行url重定向服务 y
mod_asis 使文档能在没有http头标的情况下被发送到客户端 y
mod_auth 支持使用存储在文本文件中的用户名、口令实现认证 y
mod_auth_dbm 支持使用dbm文件存储基本http认证 n
mod_auth_mysql 支持使用mysql数据库实现基本http认证 n
mod_auth_anon 允许以匿名方式访问需要认证的区域 y
mod_auth_external支持使用第三方认证 n
mod_autoindex 当缺少索引文件时,自动生成动态目录列表 y
mod_cern_meta 提供对元信息的支持 n
mod_cgi 支持cgi y
mod_dir 能够重定向任何对不包括尾部斜杠字符命令的请求 y
mod_env 使你能够将环境变量传递给cgi或ssi脚本 n
mod_expires 让你确定apache在服务器响应请求时如何处理expires y
mod_headers 能够操作http应答头标 y
mod_imap 提供图形映射支持 n
mod_include 使支持ssi n
mod_info 对服务器配置提供了全面的描述 y
mod_log_agent 允许在单独的日志文件中存储用户代理的信息 n
mod_log_config 支持记录日志 y
mod_log_referer 提供了将请求中的referer头标写入日志的功能 n
mod_mime 用来向客户端提供有关文档的元信息 y
mod_negotiation 提供了对内容协商的支持 y
mod_setenvif 使你能够创建定制环境变量 y
mod_speling 使你能够处理含有拼写错误或大小写错误的url请求 n
mod_status 允许管理员通过web管理apache y
mod_unique_id 为每个请求提供在非常特殊的条件下保证是唯一的标识 n

表一:apache模块功能一览表

 

在src目录下执行:“. /configure”;

编译apache:执行命令“make”;

根据机器性能的不同,经历一段5-30分钟的编译,就大功告成了。

将编译好的可执行文件httpd复制到/etc/httpd/bin目录下;

将apache发行版的配置文件:access.conf、httpd.conf、mime.types、srm.conf文件复制到/etc/httpd/conf目录下。到此为止,安装完成。
3.4 一些说明

在red hat linux 6.0中,apache将自己的所有配置文件和日志文件放在了“/etc/httpd”目录下,其中“/etc/httpd/conf”下为配置文件,“/etc/httpd/log”下为日志文件。

同时,它将建立“/home/httpd”目录,并在其下建立三个子目录:“html/”:在这个目录下存放html(主页)文件;“cgi-bin/”:在这个目录下可以存放一些cgi程序;“icons/”:在这个目录下是服务器自带的一些图标。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » Linux Apache Web 服务器-网管专栏,WEB服务
分享到: 更多 (0)

相关推荐

  • 暂无文章