apache配置详解

可参考:Apache 的 httpd.conf 详解html

  ServerTokens OS  此指令控制了Server回送给客户端的回应头域是否包含关于服务器OS类型和编译进的模块描述信息。服务器会发送:Server: Apache/2.0.41 (Unix)web

  ServerRoot "/etc/httpd"  用于指定守护进程httpd的运行目录,httpd在启动以后将自动将进程的当前目录改变为这个目录,所以若是设置文件中指定的文件或目录是相对路径,那么真实路径就位于这个ServerR oot定义的路径之下。apache

  PidFile run/httpd.pid  指定的文件将记录httpd守护进程的进程号,因为httpd能自动复制其自身,所以系统中有多个httpd进程,但只有一个进程为最初启动的进程,它为其余进程的父进程,对这个进程发送信号将影响全部的httpd进程。PidFILE定义的文件中就记录httpd父进程的进程号。浏览器

  Timeout 60安全

    一、接收GET请求的所花费的时间总和;服务器

    二、POST或者PUT请求时发送TCP包给服务器的间隔(不是间隔时间之和)并发

    三、发送响应时发送TCP包的间隔(不是间隔之和) app

  注:就算timeout设置了1s, 服务器处理请求的时间彻底能够超过1s, 只要服务器每隔不超过1s的时间就发送一点数据到客户端便可。因此timeout参数限制的是这个间隔时间,而不是整个通讯的时间总和,故而,即便有的请求超过了TimeOut的值,也依旧没有断开链接。post

  KeepAlive On  在HTTP 1.0中,一次链接只能做传输一次HTTP请求,而KeepAlive参数用于支持HTTP 1.1版本的一次链接、屡次传输功能,这样就能够在一次链接中传递多个HTTP请求。虽然只有较新的浏览器才支持这个功能,但仍是打开使用这个选项。测试

  MaxKeepAliveRequests 100  MaxKeepAliveRequests为一次链接能够进行的HTTP请求的最大请求次数。将其值设为0将支持在一次链接内进行无限次的传输请求。事实上没有客户程序在一次链接中请求太多的页面,一般达不到这个上限就完成链接了。

  KeepAliveTimeout 15  KeepAliveTimeout测试一次链接中的屡次请求传输之间的时间间隔,若是服务器已经完成了一次请求,但一直没有接收到客户程序的下一次请求,在间隔超过了这个参数设置的值以后,服务器就断开链接。

  Listen 80  服务器监听的端口号

  mpm_prefork模块和mpm_worker模块,具体参数意思请看Apache优化配置:修改最大并发链接数

<IfModule prefork.c>
StartServers       8  
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>
<IfModule worker.c>
StartServers         4
MaxClients         300
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

加载的模块

LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule substitute_module modules/mod_substitute.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule version_module modules/mod_version.so

  Include conf.d/*.conf  加载ServerRoot目录下面的conf.d文件夹下的以.conf结尾的文件

  User apache  设置启动httpd进程的用户

  Group apache  设置启动httpd进程的用户组

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

  ServerName localhost  缺省状况下,并不须要指定这个ServerName参数,服务器将自动经过名字解析过程来得到本身的名字,但若是服务器的名字解析有问题(一般为反向解析不正确),或者没有正式的DNS名字,也能够在这里指定I P地址。当ServerName设置不正确的时候,服务器不能正常启动。
    一般一个Web服务器能够具备多个名字,客户浏览器可使用全部这些名字或IP地址来访问这台服务器,但在没有定义虚拟主机的状况下,服务器老是以本身的正式名字回应浏览器。ServerName就定义了Web服务器本身认可的正式名字,例如一台服务器名字(在DNS中定义了A类型)为freebsd.exmaple.org.cn,同时为了方便记忆还定义了一个别名(CNAME记录)为www.exmaple.org.cn,那么Apache自动解析获得的名字就为freebsd.example.org.cn,这样无论客户浏览器使用哪一个名字发送请求,服务器老是告诉客户程序本身为freebsd.example.org.cn。虽然这通常并不会形成什么问题,可是考虑到某一天服务器可能迁移到其余计算机上,而只想经过更改DNS中的www别名配置就完成迁移任务,因此不想让客户在其书签中使用 freebsd记录下这个服务器的地址,就必须使用ServerName来从新指定服务器的正式名字。

  DocumentRoot "/var/www/html"  定义这个服务器对外发布的超文本文档存放的路径,客户程序请求的UR L就被映射为这个目录下的网页文件。这个目录下的子目录,以及使用符号链接指出的文件和目录都能被浏览器访问,只是要在URL上使用一样的相对目录名。
    注意,符号链接虽然逻辑上位于根文档目录之下,但实际上能够位于计算机上的任意目录中,所以可使客户程序能访问那些根文档目录以外的目录,这在增长了灵活性的同时但减小了安全性。Apache在目录的访问控制中提供了FollowSymLinks选项来打开或关闭支持符号链接的特性。

 

Apache 的 httpd.conf 详解

相关文章
相关标签/搜索