当前位置:51VIP源码软件音乐小游戏下载联盟网络学院网络编程PHP教程 → Apache服务器配置全攻略

Apache服务器配置全攻略

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2008-6-20 2:00:48 我要发布文章
支持,使得虚拟主机的设置具备更大的意义。 


LoadModule mime_magic_module libexec/apache/mod_mime_magic.so 

LoadModule info_module libexec/apache/mod_info.so 

LoadModule speling_module libexec/apache/mod_speling.so 

LoadModule proxy_module libexec/apache/libproxy.so 

LoadModule rewrite_module libexec/apache/mod_rewrite.so 

LoadModule anon_auth_module libexec/apache/mod_auth_anon.so 

LoadModule db_auth_module libexec/apache/mod_auth_db.so 

LoadModule digest_module libexec/apache/mod_digest.so 

LoadModule cern_meta_module libexec/apache/mod_cern_meta.so 

LoadModule expires_module libexec/apache/mod_expires.so 

LoadModule headers_module libexec/apache/mod_headers.so 

LoadModule usertrack_module libexec/apache/mod_usertrack.so 

LoadModule unique_id_module libexec/apache/mod_unique_id.so 


ClearModuleList 

AddModule mod_env.c 

AddModule mod_log_config.c 

AddModule mod_mime_magic.c 

AddModule mod_mime.c 

AddModule mod_negotiation.c 

AddModule mod_status.c 

AddModule mod_info.c 

AddModule mod_include.c 

AddModule mod_autoindex.c 

AddModule mod_dir.c 

AddModule mod_cgi.c 

AddModule mod_asis.c 

AddModule mod_imap.c 

AddModule mod_actions.c 

AddModule mod_speling.c 

AddModule mod_userdir.c 

AddModule mod_proxy.c 

AddModule mod_alias.c 

AddModule mod_rewrite.c 

AddModule mod_access.c 

AddModule mod_auth.c 

AddModule mod_auth_anon.c 

AddModule mod_auth_db.c 

AddModule mod_digest.c 

AddModule mod_cern_meta.c 

AddModule mod_expires.c 

AddModule mod_headers.c 

AddModule mod_usertrack.c 

AddModule mod_unique_id.c 

AddModule mod_so.c 

AddModule mod_setenvif.c 

  Apache服务器的一个重要特性就是其模块化的结构,这不但表现为其能在编译时能通过新的模块加入新的功能,还表现为其模块可以动态加载入http服务程序中,而不必载入不需要的模块。使用Apache的动态加载模块只需要设置好Load Module和AddModule参数就可以了,这种特性就是Apache的 DSO(Dynamic Shared Object)特性,然而要想充分使用DSO特性仍然不是一个简单的事情,不适当的改动这里的设置就可能造成服务器不能正常启动。因此如果不是要增加或减少服务器提供的功能,就不要改动这里的设置。 

  上面这些列表就显示了Linux下的缺省Apache服务器支持的模块,事实上很多模块是没有必要的,不必要模块不会被载入内存。模块可以静态连接到pache 服务器内部,也可以这样动态加载,将Apache的特性都编译成动态可加载模块是该Port的做法,而不是Apache的缺省做法,这样就以牺牲很小的性能的同时,带来极大的灵活性。 

  因而动态可加载的能力还是对性能有轻微的影响,因此可以重新编译Apache,将自己所需要的功能编译进Apache 服务器内部,可以让系统显得更为干净,效率也有轻微的提高。通常仅仅为了这一个目的就重新编译Apache是没有必要的,如果需要增加其他特性而重新编译Apache,不妨在增加其他模块的同时将所有的模块都静态连接入Apache 服务器。有的使用者更喜欢动态加载模块,那么也不妨全部都使用动态加载模块。 

  这些模块都被放置到/usr/local/apache/libexec/目录下, 每个模块对应Apache服务器的一个特性。详细解释每个模块的功能需要相当多的篇幅,其中比较重要的特性将在后面相应的地方中进行解释,而具体每个模块的功能及用法就需要查看Apache的文档。 


  #ExtendedStatus On 

  Apache服务器可以通过特殊的HTTP请求,来报告自身的运行状态,打开这个ExtendedStatus 参数可以让服务器报告更全面的运行状态信息。
主服务器设置

  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服务器的管理员,通

上一页  [1] [2] [3] [4] [5] [6] [7] [8]  下一页