全面解析关于WWW服务器的配置方面问题

2
回复
378
查看
[复制链接]
发表于 2014-2-4 23:36:31 | 显示全部楼层 |阅读模式
  大家上网冲浪接触最多的肯定是WWW,不过很少人去了解过WWW服务器的一些起源或者是配置方面的问题,不过没关系,今天特别准备了这个教程给大家补补课,关于WWW服务器的相关问题就看下面吧。
          Linux操作系统近几年有了蓬勃的发展,在整个世界范围内得到了越来越多公司和团体的支持,尤其是最近IBM公司的鼎力支持,更是使Linux服务器如虎添翼,更上一层楼。而在国内,Linux的应用也是方兴未艾,众多公司已经投入到Linux系统的研发和推广工作中。一些优秀的Linux操作系统相继出现,比如红旗Linux等。但是我国的Linux应用水平还很低,熟悉Linux的人员严重缺乏,Linux专业人才的缺乏已成为Linux在国内应用和普及的瓶颈问题。据《开放系统世界》2003年第八期介绍,中国五年内Linux人才需求量将会超过120万。而“1+1+1”工程的实施,也是间接地告诉我们这个问题的严重性。如此大好时机,我们干吗还愣着不动呢!如果你是一位Linux爱好者,你可能已经掌握了基本的Linux的知识与操作,毫无疑问,你并不会去满足这样小小的成就。Linux为何如此的流行?其最大的特点莫过于功能强大,性能稳定的服务器应用了。像WWW,MAIL,FTP,DNS和SMB等。在这篇文章中,我将以RedhatLinux9为蓝本,从Web服务器的一些最基本的操作入手,从初学者使用的态度,让读者正确充分的认识Apache。好,现在就让我们一起踏上征服Apache的自由之路吧。
          第一站Apache的历史与前景
          1995年,美国国家计算机安全协会(NCSA)的开发者创建了NCSZ全球网络服务软件,其最大的特点是HTTP精灵程序,它比当时的CERN服务器更容易由源码来配置和创建,又由于当时其他服务器软件的缺乏,他很快流行起来。但是后来,该服务器的核心开发人员几乎都离开了NCSA,一些使用者们自己成立了一个组织来管理他们编写的补丁,于是ApacheGroup应运而生。他们把该服务器软件称为Apache。Apache源于Apatchyserver的读音,意思是充满补丁的服务器。如今Apache慢慢地已经成为Internet上最流行的Web服务器软件了。在所有的Web服务器软件中,Apache占据绝对优势,远远领先排名第二的MicrosoftIIS。如果你对它感兴趣,你可以访问Apache的官方网站:http://www.apache.org。Apache作为自由软件之一,像其他自由软件一样,他们都是由许许多多的自由开发人员投入了大量的时间和精力来实现并逐步完善的,所以我们有理由相信Apache的发展前景会更好。
          第二站Apache2.0的安装
<p>          Apache2.0的配置与安装和Apache1.3的有很大的不同,他像其它的开源软件一样,使用libtool和autoconf来配置环境。但不管是Apache几通常都有两种安装方式:源代码安装和RPM包安装。这两种安装类型各有特色,RPM包安装不需要编译,而源代码安装则需要先配置编译再安装,RPM包安装在一个固定的位置下,选择固定的模块,而源代码安装则可以让你选择安装路径,选择你想要的模块。下面分别以实例的形式来介绍两种类型的安装方法。
 楼主| 发表于 2014-2-4 23:36:31 | 显示全部楼层
</p>          一,使用源代码安装
          (1)获得源代码
          #lynxhttp://www.&&&.org/dist/httpd/httpd-2_0_NN.tar.gz
          NN表示当前所用的版本号。
          (2)解压缩
          #gzip-dhttpd-2_0_NN.tar.gz
          #tarxvfhttpd-2_0_NN.tar
          (3)配置.
          #./configure--prefix=/usr/local/apache
          表示Apache将安装在/usr/local/apache目录下
          (4)编译与安装
          #make
          #makeinstall
          (5)测试
          #/usr/local/apache/bin/apachectlstart
          二,使用RPM包安装
          #rpm—ivhapache-*.rpm
          完成安装后,配置文件在/etc/httpd/conf/目录下,文件根目录为/var/www/html,工具文件在/etc/rc.d/init.d/目录下,日志文件在/var/log/httpd/目录下。
          第三站Apache2.0的配置
          Apache2.0的主配置文件为httpd.conf。如果以上述源代码安装则配置文件保存在/usr/local/apache/conf/目录下,若以RPM包方式安装则配置文件保存在/etc/httpd/conf/目录下。我们可以直接修改httpd.conf文件也可以用redhatlinux9自带的图形化工具来配置。打开启动程序->系统设置->服务器设置->HTTP服务器,可以进行相关。
          下面我们来看一下httpd.conf中的几条指令,“#”后加入了注释说明。
          Port80#定义了web服务器的侦听端口,默认值为80,它是TCP网络端口之一。若写入多个端口,以最后一个为准。
          Userapache#一般情况下,以nobody用户和nobody组来运行web服务器,因为web
          Groupapache#服务器发出的所有的进程都是以root用户身份运行的,存在安全风险。
          ServerAdminroot@localhost#指定服务器管理员的E-mail地址。服务器自动将错误报告到该地址。
          ServerRoot/etc/httpd#服务器的根目录,一般情况下,所有的配置文件在该目录下
          ServerNamenew.host.name:80#web客户搜索的主机名称
          KeepAliveTimeout15#规定了连续请求之间等待15秒,若超过,则重新建立一条新的TCP连接
          MaxKeepAliveRequests100#永久连接的HTTP请求数
          MaxClients150#同一时间连接到服务器上的客户机总数
          ErrorLoglogs/error_log#用来指定错误日志文件的名称和路径
          PidFilerun/httpd.pid#用来存放httpd进程号,以方便停止服务器。
          Timeout300#设置请求超时时间,若网速较慢则应把值设大。
<p>          DocumentRoot/var/www/html#用来存放网页文件
 楼主| 发表于 2014-2-4 23:36:31 | 显示全部楼层
</p>          第四站Apache的管理
          (1)启动和停止Apache
          /etc/rc.d/init.d/httpdstart
          /etc/rc.d/init.d/httpdstop
          (2)Apache的日志文件
          有人说判定一个管理员是否优秀之一就是看他是否是一个分析日志的能手,因为从日志文件中获取的反馈信息对管理员来说是相当重要的。Apache的日至文件主要包括访问日志和错误日志。访问日志记录了该服务器所有的请求的过程,主要记录的是客户的信息,通过它我们可以知道什么人访问了该网站,什么时候访问的,访问的内容是什么等等。错误日志则是记录了服务器出错的细节和如何处理等。日志文件的位置是由上述主配置文件httpd.conf来规定的。Redhat中有一个查看日志的工具——系统日志。
          下面各举一个例子来说明他的格式:
          错误日志的写法:
          [Monsep2214:32:522003][error][client127.0.0.1]clientdeniedbyserverconfiguration:/export/home/live/ap/htdocs/test
          [Monsep2214:32:522003]错误发生的时间。
          [error]表示错误的级别。有debug,info,notice,warn,error,crit,alert,emerg,这些级别由低到高表示了错误的严重性。
          [client127.0.0.1]表示客户端IP地址。
          clientdeniedbyserverconfiguration:/export/home/live/ap/htdocs/test标是错误的具体信息。
          访问日志的写法:
          127.0.0.1-wangdong[22/sep/2003:13:55:36-0800]"GET/apache_pb.gifHTTP/1.0"2002326
          127.0.0.1表示访问这台服务器的客户端IP地址。
          Wangdong表示用户的登录名。
          [22/sep/2003:13:55:36-0800]服务器完成客户端请求的时间,格式为[日/月/年:小时:分钟:秒时区]
          "GET/apache_pb.gifHTTP/1.0"表示客户端访问该资源所使用的方法。
          200记录的是服务器返回给客户的状态码。200表示成功,以4打头的表示访问出错。
          2326表示发给客户端的总字节数。若是“—”表示没有找到访问资源。
          但在实际应用中,对于大型网站,日志文件往往增长的很快,不利于我们查询,降低服务器的效率,而且占用大量的磁盘空间,所以我们必须对日志进行定期的维护。
          既然日志文件很大,那么我们如何把一大堆枯燥的数据整理成容易让我们看懂的形式呢?有没有这样的工具呢?非常幸运,在redhatlinux9中自带了一个分析日志的工具——webalizer。
          我们也可以在网上找到大量这样优秀的免费的工具,例如:WebTrendsAnalysisSeries。
          第五站配置虚拟主机
          虚拟主机是在一台www服务器上为多个单独的域名提供www服务,每个域名具有自己的目录和配置,相当于将一台主机分为多台主机,虚拟主机技术对于主机数量不足,但又想为不同的用户提供独立的Web服务的需求非常有效。而对于一个公司,利用价格昂贵的服务器只提供一种域名服务,似乎是不明智的,而现在越来越多的公司喜欢在一台服务器上使用多个域名服务,架设不同的网站,这样做的好处是显而易见。
          Apache有两种方式支持虚拟主机,一种是基于IP的虚拟主机,另一种是基于名字的虚拟主机。基于名字的虚拟主机使用相同的IP地址来配置不同的虚拟主机,这就弥补了因IP地址不足而带来的问题。基于名字的虚拟主机的配置相当简单,你只需配置你得DNS服务器使每个主机名对应正确的IP地址,然后再配置ApacheHTTPServer使它能认识不同的主机名就可以了。
          假设我们组建了一家多媒体制作公司,有一台Apache服务器和一个IP地址:192.168.0.1要运行两种业务,一种为电子商务网站,域名为www.business.media.com,另一种为教学网站,域名为www.teaching.media.com。先在DNS服务器中把域名www.business.media.com和www.teaching.media.com配置好就可以了。
          NameVirtualHost192.168.0.1
          ServerNamewww.business.media.com
          DocumentRoot/var/
          对于服务器大家可能很不熟悉,很多人认为我们平常只管用电脑用网络就好了,服务器交给专业人士,不过关于这方面的问题还是自己多多认识为好,希望对大家有帮助。
关注官方微信

微信号:大白网

微博:大白网

QQ1群:4731622

QQ2群:4731622

全国服务热线:

QQ24485416

(工作日:周一至周五 9:00-16:00)
大理市
www@dali8.net

手机版-小黑屋- 大理白族|大理乡村旅游网|大理网|大理论坛|白族网|大理旅游网|大理信息网|大理生活网

技术支持:挖主机网络 Powered by大白网© 2006-2025 dalibaizu.com  滇ICP备19004088号 滇公网安备 53290102000530号