Apache服务器高级设置指南(一)

apache|服务器|高级

目前WWW Server软件有许多,能运行在linux下的也不少,有NCSA HTTPd Server、CERN HTTPd Server、pache、Netscape Fast Track Server、Zeus Server等。这些软件各有特色:NCSA(美国伊利诺斯大学的国家超级计算应用中心)是WWW Browser Mosaic发迹之地,也是Netscape公司的安德森成名的地方;CERN(欧洲原子核研究中心)是WWW的起源地,1989年蒂姆·贝纳斯-李正是在这开发成功了世界上第一个Web服务器和客户机。这两家推出的WWW Server功能齐全,成为同类软件的标准,再加上它们都是Freeware,因此刚一推出就大受欢迎。前几年,在linux下WWW Server软件使用最多的是NCSA和CERN,但这一两年来,后起之秀Apache却独领风骚,号称"WWW Server之王"。在最新的Red Hat、Slackware和 OpenLinux各版本中都包含了Apache。

  Apache是在NCSA的基础上发展起来的,因此这二者的配置文件十分相似。

一、 安装

  Apache的安装十分简单。最好在安装RedHat时,选择安装Web Server,这样即使你对编译操作不熟的话,也能轻轻松松把服务器架设起来。

  如果你想亲自编译源文件,那么你已经不是一个初学者,建议你直接去看How-To文档或其他资料。打开机器,进入X-Window系统后,启动Netscape Navigator,敲入本机的IP地址,如果出现"It worked"的欢迎页面,那说明服务器程序工作正常。你可以进行下一步配置工作。在不同的版本下,服务器默认的工作根目录也不一样。Red Hat默认的是/etc/httpd,配置文件在/etc/httpd/conf目录下,页面文件在/home/httpd目录下。

二、 设置httpd.conf、srm.conf、access.conf文件

  Apache安装成功后,在conf子目录下有四个文件:httpd.conf、srm.conf、access.conf、magic(请注意:在www-howto文档中,说第四个文件是mime.types,但在实际安装中,在conf子目录下是magic文件)。httpd.conf是Apache设置文件中的主文件,httpd程序启动时会先读取httpd.conf。srm.conf是数据配置文件,在这个文件中主要设置WWW Server读取文件的目录、目录索引时的画面、CGI执行时的目录等等。access.conf是负责基本的读取文件控制,限制目录所能执行的功能及访问目录的权限设置。

  下面将简单对这三个数据设置文件进行说明。

httpd.conf文件

  TransferLog:

  如果你想知道你的网站上哪个页面最受来访者的欢迎,在一段时间内有多少人访问你的站点,你当然可以设置一个计数器,但每页都设计数器,太繁琐而且得到的结果不太可靠。最好的办法是查看相应log文件,TransferLog命令就是指定当浏览器要求服务器传送文件时记录到所设置的文件,可以根据此文件查看有哪些用户看过哪些HTML文件。可用一些程序分析这个文件的数据,得出监测各种有用的数据。默认的访问log文件是logs/access_log。

  ErrorLog:

  这个命令是指定当WWW Server运转过程中发生问题时错误信息存放到哪个文件。默认是logs/error_log。

  VirtualHost:

  这个命令是用来设置虚拟主机,即用一台主机执行多个域名的WWW Server。详细命令使用将在第三部分详细解释。

srm.conf

  DocumentRoot:

  指定WWW Server存放html文件的根目录。WWW Server从硬盘中读取html文件传送给浏览器,并不是可从任一个目录中读取文件,而是从一个特定目录中开始读取文件,这个特定的目录就是由DocumentRoot命令来指定。red hat5.2中默认的目录是/home/httpd/html。

  如果用户访问http://www.swm.com.cn/netlife/index.html,此时WWW Server并不是从系统的根目录下的netlife目录中读取index.html,而是从/home/httpd/html/netlife目录中读取index.html文件。
UserDir:

  如果要在WWW Server上给一些用户开设空间,搁放个人主页,最好不要把每个人的html文件都放到DocumentRoot目录中,用UserDir命令可让每个人的页面放置在自己的home目录中。默认的目录是public_html。

  如果UserDir设置的目录是public_html,而Username是yan,而该user的home目录是/home/yan,那你访问http://www.swm.com.cn/~yan/intr.html时所看到的intr.html文件存放在/home/yan/public_html中,而不是/home/httpd/html。

 access.conf

  如果你有些目录只想让某些人访问,或者只允许在特定的目录下允许CGI程序,这时就要对access.conf进行修改。

  Apache的存取控制方式有两种:一是"整体存取控制",只通过access.conf来控制文件的设置,来限定目录所能执行的功能及存取目录的权限设置。二是"特定目录存取控制",在特定目录中建立存取设置文件,这个文件名在srm.conf中的AcessFileName来决定,默认是.htaccess。例如某些目录中的文件只允许某些人访问,那可在该目录下建立.htaccess文件,当WWW Server读取该目录时便会自动读取.htaccess来决定是否读取执行或要求口令验证。这两种方式所使用的命令几乎相同,而且设置的格式也相同。 

  Directory:

  说明要设置的目录,然后再用命令来设置目录的功能和权限。

  Options:

  设置目录可以执行哪些功能。有None、All、ExecCGI、Includes、Indexs、IncludesNoExec、FollowSymlink、SymlinksOwnerMatch等选项。如果想让某个目录可以执行CGI程序,那么应在Options命令中加上ExecCGI选项。

  Require:

  设置可以对所指定目录以指定方式来存取的Users和Group。该命令执行后,当读取该目录数据时,系统会要求输入Username和Password。

  忠告:修改完设置文件后,不要像在Windows工作那样,重启机器使其生效。要记住,你现在linux下,使用linux的好处之一就是不用再见到Windows 98那死机时的蓝屏以及不必对配置文件做了一点点修改就无聊而又频繁地重启机器。你的WWW服务器任何时候都有很多人在访问,频繁地重启机器将把你的客人赶跑。要学会不重启机器,而是重新启动一个正执行的程序(Process,严格一点应叫做进程、作业)。可以用kill命令来使程序重新启动。具体kill的使用参见有关文档。

  先用ps命令查看httpd的pid号,然后用kill命令杀死它,重新启动httpd。具体命令如下:

    linux> ps -x
    linux> kill -HUP 13668

  (13668是假设httpd的pid号,在实际使用中,不同的情况值也不同)

  这样就可将httpd重新启动,使修改的配置文件生效。看完上面一大堆命令,是不是有些烦,其实你不了解这些命令也无所谓,用系统默认设置也能正常工作。

时间: 2024-09-07 06:57:59

Apache服务器高级设置指南(一)的相关文章

Apache服务器高级设置指南(4)

apache|服务器|高级 作为系统管理员,若你只有一个IP地址,却有好几个域名,又要求访问每个域名都要看到不同的内容,那怎么办?总不至于为每个域名都配上一台服务器吧.这就要采用虚拟主机(Virtual Host)技术,幸好Apache就支持这种功能.虚拟主机有两种方式:IP-Based(基于IP式).Name-based(基于域名式).IP-Based指的是一个域名对应一个IP地址,而Name-based指的是多个域名对应一个IP地址. 虚拟主机的设置并不复杂,只要在httpd.conf文件中

Apache服务器高级设置指南(1)

apache|服务器|高级 目前WWW Server软件有许多,能运行在linux下的也不少,有NCSA HTTPd Server.CERN HTTPd Server.pache.Netscape Fast Track Server.Zeus Server等.这些软件各有特色:NCSA(美国伊利诺斯大学的国家超级计算应用中心)是WWW Browser Mosaic发迹之地,也是Netscape公司的安德森成名的地方:CERN(欧洲原子核研究中心)是WWW的起源地,1989年蒂姆·贝纳斯-李正是在

Apache服务器高级设置指南(二)

apache|服务器|高级 三. 虚拟主机(Virtual Host)的设置 作为系统管理员,若你只有一个IP地址,却有好几个域名,又要求访问每个域名都要看到不同的内容,那怎么办?总不至于为每个域名都配上一台服务器吧.这就要采用虚拟主机(Virtual Host)技术,幸好Apache就支持这种功能.虚拟主机有两种方式:IP-Based(基于IP式).Name-based(基于域名式).IP-Based指的是一个域名对应一个IP地址,而Name-based指的是多个域名对应一个IP地址. 虚拟主

Apache服务器高级设置指南(5)

apache|服务器|高级 经常见到某些网站提供个人主页,显得很神气,其实你也可以开放你机器上的空间给别人,这很简单就能实现.只要你按照下面的提示对你的WWW服务器配置文件进行修改. 给用户开放个人主页空间,一是要确定用户主页的存放目录,二是开放用户主页目录的读取权限. 方法一你以root的身份给用户chen开个帐号,系统自动会给chen分配一空间/home/user,而后在/home/chen的目录下建一public_html的子目录,子目录的属性要设成other可读和可执行的. 接着修改ac

Apache服务器安全设置指南

Apache安全设置,涉及到http://www.aliyun.com/zixun/aggregation/14417.html">Apache的配置文件.Apache的目录访问控制.在Apache上运行CGI等安全方面的设置. Apache的配置文件 对于RedHat Linux系统,Apache的配置文件放在/etc/httpd/conf/目录下.如果是自行编译安装的Apache,则视编译时指定的目录路径而定,默认是/usr/local/apache/conf.在conf目录下有3个A

新手必备Apache服务器安全设置指南

Linux是一种自由和开放源码的类Unix操作系统.目前存在着许多不同的Linux,但它们都使用了Linux内核.而在服务器的http://www.aliyun.com/zixun/aggregation/18665.html">应用领域,Linux所占的市场份额是远远超过Windows服务器的,特别是一些大的并发应用方面,所以Linux的Web应用性能更能得到充分的体现. 在Linux服务器中提供Web服务,一般是使用Apache,当然也有很多平台在使用Nginx,当然Nginx的安全设

PHP初学者:配置Apache服务器并且设置DNS

当然主要有技术含量的是点DNS的解析,我正给我们公司负责,先查资料的说...' 我们通常所说的虚拟主机技术就是将一台(或者一组)服务器的资源(系统资源.网络带宽.存储空间等)按照一定的比例分割成若干台相对独立的"小主机"的技术.每一台这样的"小主机"在功能上都可以实现WWW.FTP.Mail等基本的Internet服务,就像使用独立的主机一样. 目前网站服务器的虚拟主机平台使用以开放的Apache为最多,其次是微软的Windows IIS.Apache具有跨平台(F

Win2008 R2 WEB 服务器安全设置指南之修改3389端口与更新补丁_win服务器

3389端口是指windows系统中的远程桌面端口,可以使用它本管理远程计算机,就像操作本地的电脑一样,但是也容易被一些黑客利用,所以对于这个端口我必须要修改,且必须在安装完系统后就马上修改它. 随着云主机的普及和微软的大力更新,用windows server 2008 R2作为web服务器的人越来越多,而其强大的性能和可操作性得到了好评.连卖win2008的虚拟主机商也多起来了,所以今天我来讲讲我是怎么设置Win2008服务器安全的,拙见希望能帮到大家.一起远离肉鸡吧... 千里之行始于足下,

Win2008 R2 WEB 服务器安全设置指南之禁用不必要的服务和关闭端口_win服务器

安全是重中之重,以最少的服务换取最大的安全.通过只启用需要用到的服务.关闭暂时用不到的服务或不用的服务,这样最大程度来提高安全性. 作为web服务器,并不是所有默认服务都需要的,所以像打印.共享服务都可以禁用.当然了,你的系统补丁也需要更新到最新,一些端口的漏洞已经随着补丁的更新而被修复了.网上的一些文章都是相互复制且是基于win2003系统较多,而win2008相比win2003本身就要安全很多. 那我们为什么还要谈关闭端口呢,因为我们要防患于未然,万一服务器被黑就不好玩了. 禁用不必要的服务