APP下载

Linux系统下Apache服务器的配置与研究

2014-12-09陈欣

无线互联科技 2014年11期

陈欣

摘 要:在现在的互联网Web服务器领域中,Apache服务器依靠快速、可靠、免费和良好的扩展性等优点,占据了绝大多数的市场分额。本文基于Linux平台,从Apache的特点和基本配置着手,讲述了如何配置出简单有效的Apache服务器。

关键词:Linux;Unix;Apache;Web服务器

1 Apache服务器的介绍

Apache源于NCSAhttpd服务器,读音取自“a patchy server”,是目前世界上最流行的Web服务器。Apache是一个著名的自由软件,它是开源的,因此有程序员不断来为它开发新功能、新特性。当前的Apache几乎可以运行在所有的UNIX、Linux、Windows系统平台上。Apache具有可移植性,支持SSL技术,支持多个虚拟主机。

在Web服务器领域中,Apache以快速、可靠、免费和良好的扩展性等优点脱颖而出,已经远远超过了其它的服务器。根据Netcraft的最新市场调查显示,2013年7月全球服务器开发商市场中,Apache占据52.19%,排名第一。Microsoft仅仅占据19.65%,排名第二。Nginx占据13.60%,排名第三。

2 启动Apache服务器

Linux中检查服务器安装情况 #rpm–qa|grep httpd,

Linux中启动Apache服务器 #service httpd start

Linux中关闭Apache服务器 #service httpd stop

Linux中配置Apache服务器,管理员需要在防火墙中打开该服务器对应的80端口或指定的其它端口。此时客户机可以使用浏览器来进行检查,若有Apache的测试页面出现,则说明当前Web服务可以正确运行。

3 Apache服务器的基本配置

Linux系统中Apache服务器的主配置文件位于/etc/httpd/conf/httpd.conf,此文件由3大部分构成,即Apache全局配置、主服务器配置、虚拟主机配置。下面对配置文件做简单介绍。

3.1 设置客户端同一时间段的最大连接数目

#MaxClents 256

设置Apache服务器同时的最大连接数目,一旦超过此数目,客户机就会得到“用户太多,拒绝访问”的错误提示。管理员可以根据服务器实际情况做相应的修改。

3.2 设置服务器的监听端口

#Listen 12.34.56.78:80

配置Apache服务器的监听端口,也可以不适用默认的端口80。如:

使用8080端口 # Listen 192.168.3.188:8080

使用9001端口 # Listen 192.168.3.188:9001

设置服务器监听非80的其它端口,客户机的访问方式会有所不同,如果Apache服务器中的网站http://www.wtcjsj.com监听端口改为9001,则客户机需要在浏览器中键入http://www.wtcjsj.com:9001来访问该站点。

3.3 设置默认网站在服务器中的位置

#DocumentRoot "/var/www/html"

设置Apache服务器默认网站在服务器中的位置,默认情况下部署的站点位于/var/www/html目录中。网络管理员可以根据实际情况做相应的修改,如改为"/var/www/ldgs"。

3.4 设置默认主页名

#DirectoryIndex index.html index.htm index.php index.html.var

设置Apache服务器的默认主页名,系统默认的主页名为index.html、index.htm和index.php。网络管理员可以根据实际情况做出修改,如改为#DirectoryIndex ldgs.php index.html.var

3.5 设置服务器虚拟目录,并设置访问权限

Alias /icons/ "/var/www/icons/"

(1)AuthType选项设置对用户实施认证的类型

(2)AuthName设置认证领域内容。

(3)AuthUserFile设置口令文件的路径

(4)Require设置允许访问的用户

设置虚拟目录Alias /ldgs "/usr/local/ldgs"

虚拟目录位置

Options Indexes FollowSymLinks MultiViews

实施认证语言 AuthType Basic

设置认证内容AuthName "This is our directory. Please Login:"

设置口令路径AuthUserFile /etc/httpd/ldgspwd

设置访问权限AllowOverride None

Order allow,deny

Allow from all

设置访问用户Require user peter jack

3.6 设置服务器识别的语言

AddDefaultCharset GB2312

设置Apache服务器默认识别中文简体,如果此处未正确定义会导致部署的网页无法正确显示中文。

4 虚拟主机的配置

通过虚拟主机部署Apache服务器。可以简化配置服务器的工作,用户可以在一台服务器上配置多个不同的Web站点,常见的方法有如下3种:

⑴基于多个IP地址的虚拟主机(每个独立的站点都有一个IP地址)

⑵基于多个域名的虚拟主机(一个IP地址实现多个网站,网站使用不同的域名)

⑶基于多个端口的虚拟主机(一个IP地址实现多个网站,网站使用不同的端口)

举例:这里以基于多个域名的虚拟主机来讲述虚拟主机的配置方法,本例使用一个IP地址,在一台Apache服务器中部署两个公司的站点,使用系统默认的80端口。

NameVirtualHost 192.168.3.188 定义服务器地址

ServerName www.ldgs.com:80 定义虚拟网站ldgs的名称

DocumentRoot /var/www/ldgs 定义虚拟网站ldgs的目录

DirectoryIndex ld.html 定义虚拟网站ldgs的主页

ServerName www.zdgs.com:80 定义虚拟网站zdgs的名称

DocumentRoot /var/www/zdgs 定义虚拟网站zdgs的目录

DirectoryIndex zd.html 定义虚拟网站zdgs的主页

Apache服务器基于多个域名的虚拟主机配置还需要相应的域名解析,管理员必须在指定的DNS服务器上对虚拟站点做出域名解析。配置完成后用户即可通过http://www.ldgs.com和http://www.zdgs.com来访问Apache服务器上的两个不同网站。基于多个IP地址和基于多个端口的虚拟主机配置方法与此类似,虚拟主机配置Apache服务器的技术提高了服务器的利用率,解决了在一台Apache服务器上部署多个Web站点的问题。

[参考文献]

[1]仲劲.Linux服务器配置与管理.北京:北京理工大学出版社.2011.

[2]代洪涛.Linux 操作与服务器配置实用教程.北京:清华大学出版社. 2014.

[3]林慧琛.Red Hat Linux服务器配置与应用.北京:人民邮电出版社. 2006.

[4]刘凯.Linux服务器架设项目教程.北京:电子工业出版社.2011.