陈欣
摘 要:在现在的互联网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.