Apache服务器配置全攻略(三)

apache|服务器|攻略

作者:王波

主服务器设置

  Apache服务器需要各种设置,以定义自己使用各种参数以提供Web服务。对于使用虚拟主机的情况,除了在虚拟主机的定义项中覆盖的设置之外(有的设置必须重新定义),这里的设置也是虚拟主机的缺省设置。

  Port 80

  Port定义了Standalone模式下httpd守护进程使用的端口,标准端口是80。这个选项只对于以独立方式启动的服务器才有效,对于以inetd方式启动的服务器则在inetd.conf中定义使用哪个端口。

  在Unix下使用80端口需要root权限,一些管理员为了安全的原因,认为 httpd 服务器不可能没有安全漏洞,因而更愿意使用普通用户的权限来启动服务器,这样就不能使用80端口及其他小于1024的端口,而必须使用大于 1024的端口来启动httpd,一般情况下8000或8080也是常用的端口。而Apache httpd服务器本身可以在以root权限打开80端口后再改变为普通用户身份进行运行,这样就减少了危险性,因而就不需要考虑这个安全问题。但是如果普通用户也想安装配置自己的WWW服务器,那么就不得不使用大于1024的端口。

  User nobody

  Group nogroup

  User和Group配置是Apache的安全保证,Apache在打开端口之后,就将其本身设置为这两个选项设置的用户和组权限进行运行,这样就降低了服务器的危险性。这个选项也只用于 Standalone模式,inetd模式在inetd.conf中指定运行Apache的用户。由于服务器必须执行改变身份的setuid()操作,因此初始进程应该具备root权限,如果是使用非root用户来启动Aapche,这个配置就不会发挥作用。

  缺省设置为nobody和nogroup,这个用户和组在系统中不拥有文件,保证了服务器本身和由它启动的CGI 进程没有权限更改文件系统。在某些情况下,例如为了运行CGI与Unix交互,也需要让服务器来访问服务器上的文件,如果仍然使用nobody和nogroup,那么系统中将会出现属于nobody的文件,这对于系统安全是不利的,因为其他程序也会以nobody和nogroup的权限执行某些操作,就有可能访问这些nobody拥有的文件,造成安全问题。一般情况下要为Web服务设定一个特定的用户和组,同时在这里更改用户和组设置。

  ServerAdmin you@your.address

  配置文件中应该改变的也许只有ServerAdmin, 这一项用于配置WWW服务器的管理员的email地址,这将在HTTP服务出现错误的条件下返回给浏览器,以便让Web使用者和管理员联系,报告错误。习惯上使用服务器上的webmaster作为WWW服务器的管理员,通过邮件服务器的别名机制,将发送到webmaster 的电子邮件发送给真正的Web管理员。

  #ServerName new.host.name

  缺省情况下,并不需要指定这个ServerName参数,服务器将自动通过名字解

析过程来获得自己的名字,但如果服务器的名字解析有问题(通常为反向解析不

正确),或者没有正式的DNS名字,也可以在这里指定IP地址。当ServerName设

置不正确的时候,服务器不能正常启动。

  通常一个Web服务器可以具有多个名字,客户浏览器可以使用所有这些名字或IP地址来访问这台服务器,但在没有定义虚拟主机的情况下,服务器总是以自己的正式名字回应浏览器。ServerName就定义了Web服务器自己承认的正式名字,例如一台服务器名字(在DNS中定义了A类型)为exmaple.org.cn,同时为了方便记忆还定义了一个别名(CNAME记录)为www.exmaple.org.cn,那么Apache自动解析得到的名字就为example.org.cn,这样不管客户浏览器使用哪个名字发送请求,服务器总是告诉客户程序自己为 example.org.cn。虽然这一般并不会造成什么问题,但是考虑到某一天服务器可能迁移到其他计算机上,而只想通过更改DNS中的www别名配置就完成迁移任务,所以不想让客户在其书签中使用 Linux 记录下这个服务器的地址,就必须使用ServerName来重新指定服务器的正式名字。

  DocumentRoot "/www/"

  DocumentRoot定义这个服务器对外发布的超文本文档存放的路径,客户程序请求的UR L就被映射为这个目录下的网页文件。这个目录下的子目录,以及使用

符号连接指出的文件和目录都能被浏览器访问,只是要在URL上使用同样的相对目录名。

  注意,符号连接虽然逻辑上位于根文档目录之下,但实际上可以位于计算机

上的任意目录中,因此可以使客户程序能访问那些根文档目录之外的目录,这在

增加了灵活性的同时但减少了安全性。Apache在目录的访问控制中提供了FollowSymLinks选项来打开或关闭支持符号连接的特性。

时间: 2024-11-03 11:29:12

Apache服务器配置全攻略(三)的相关文章

Apache服务器配置全攻略(一)

apache|服务器|攻略 作者:王波 Apache服务器的设置文件位于/usr/local/apache/conf/目录下,传统上使用三个配置文件httpd.conf,access.conf和srm.conf,来配置Apache服务器的行为. httpd.conf提供了最基本的服务器配置,是对守护程序httpd如何运行的技术描述:srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及如何支持这些文件:access.conf用于配置服务器的访问权限,控制不同用户和计算机的

Apache服务器配置全攻略(六)

apache|服务器|攻略 作者:王波 这里可以看到另外一个语句Limit,Limit语句就是用来针对具体的请求方法来设定访问控制的,其中可以使用GET.POST等各种服务器支持的请求方法做Limit的参数,来设定对不同请求方法的访问限制.一般可以打开对GET.POST. HEAD三种请求方法,而屏蔽其他的请求方法,以增加安全性.Limit语句中,可以用Order .Allow.Deny,Allow和Deny中可以使用匹配的方法针对域名和IP进行限制,只是对于域名是从后向前匹配,对于IP地址则从

Apache服务器配置全攻略(五)

apache|服务器|攻略 作者:王波 这里可以看到另外一个语句Limit,Limit语句就是用来针对具体的请求方法来设定访问控制的,其中可以使用GET.POST等各种服务器支持的请求方法做Limit的参数,来设定对不同请求方法的访问限制.一般可以打开对GET.POST. HEAD三种请求方法,而屏蔽其他的请求方法,以增加安全性.Limit语句中,可以用Order .Allow.Deny,Allow和Deny中可以使用匹配的方法针对域名和IP进行限制,只是对于域名是从后向前匹配,对于IP地址则从

Apache服务器配置全攻略(二)

apache|服务器|攻略 作者:王波 MinSpareServers 5MaxSpareServers 10 在使用子进程处理HTTP请求的Web服务器上,由于要首先生成子进程才能处理客户的请求,因此反应时间就有一点延迟.但是,Apache服务器使用了一个特殊技术来摆脱这个问题,这就是预先生成多个空余的子进程驻留在系统中,一旦有请求出现,就立即使用这些空余的子进程进行处理,这样就不存在生成子进程造成的延迟了.在运行中随着客户请求的增多,启动的子进程会随之增多,但这些服务器副本在处理完一次HTT

Apache服务器配置全攻略(八)

apache|服务器|攻略 作者:王波 用于设置访问控制的设置主要是针对目录和文件进行设置的,然而也可以针对不同的URL进行访问控制的设置,这样就不必担心ScriptAlias.Alias是否将路径设置到了受控制的目录之外了.针对URL进行控制的语句为 Location语句,这样不但能对服务器上的文件.CGI提供保护,此外,它还能保护不能找到对应文件,而是由服务器本身提供的特殊功能URL.http://servername/server-status用于报告当前Apache服务器的状态,http

Apache服务器配置全攻略(七)

apache|服务器|攻略 作者:王波 如果使用了IndexOptions FancyIndexing选项,可以让服务器产生的目录列 表中针对各种不同类型的文档引用各种图标.而哪种文件使用哪种图标,则使用 下面的 AddIconByEncoding.AddIconByType以及AddIcon来定义,分别依据MIME 的编码.类型以及文件的后缀来判断使用何种图标.如果不能确定文档使用的图标,就使用 DefaultIcon定义的缺省图标. 同样,使用AddDescription可以为不同类型的文档

Apache服务器配置全攻略

Apache服务器的设置文件位于/usr/local/apache/conf/目录下,传统上使用三个配置文件httpd.conf,access.conf和srm.conf,来配置Apache服务器的行为. httpd.conf提供了最基本的服务器配置,是对守护程序httpd如何运行的技术描述:srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及如何支持这些文件:access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问限制:这三个配置文件控制着服务器的各

Apache服务器配置全攻略_服务器

个配置文件控制着服务器的各个方面的特性,因此为了正常运行服务器便需要设置好这三个文件.  除了这三个设置文件之外,Apache还使用mime.types文件用于标识不同文件      对应的MIME类型, magic文件设置不同MIME类型文件的一些特殊标识,使得Apache 服务器从文档后缀不能判断出文件的MIME 类型时,能通过文件内容中的这些特殊标记来判断文档的MIME类型.  bash-2.02$ ls -l /usr/local/apache/conf  total 100  -rw-

Apache服务器配置全攻略(四)

Options FollowSymLinks AllowOverride None Apache服务器可以针对目录进行文档的访问控制,然而访问控制可以通过两 种方式来实现,一个是在设置文件 httpd.conf(或access.conf)中针对每个目 录进行设置,另一个方法是在每个目录下设置访问控制文件,通常访问控制文件 名字为.htaccess.虽然使用这两个方式都能用于控制浏览器的访问,然而使用配置文件的方法要求每次改动后重新启动httpd守护进程,比较不灵活,因此主要用于配置服务器系统的整