Tomcat --apache httpd.conf简单介绍

apache httpd.conf详解
官方文档:http://httpd.apache.org/docs/2.4/
指令文档:http://httpd.apache.org/docs/2.4/mod/directives.html
配置文件主要有三大部分
1.全局配置文件
2.主机配置文件
3.虚拟主机
#1.全局配置文件
##1.ServerRoot

Define SRVROOT "D:/softDown/apache/Apache24"
ServerRoot "${SRVROOT}"

指定apache运行目录,后面使用到的所有相对路径都是在这个目录下(包括:服务器配置、出错信息、日志文件等)。
##2.Listen

#Listen 12.34.56.78:80
Listen 80

apache服务器监听的端口
##3.LoadModule
动态共享对象,apache启动时加载的模块。
##4.unixd_module

<IfModule unixd_module>
User daemon
Group daemon
</IfModule>

用于指定该apache服务器可以应用于不同的用户/组。
#2.主配置文件
##1.ServerAdmin admin@example.com
管理员的邮箱,如果apache服务器有任何问题,都会向这个邮箱发送消息.这个地址会存在于错误日志中。
##2.ServerName localhost:80
服务器的名称及端口,默认情况下不需要修改
##3.控制访问权限

<Directory />
    AllowOverride none
    Require all denied
</Directory>

设置web服务器针对目录文档的访问权限控制
##4.DocumentRoot "${SRVROOT}/htdocs"
它定义了apache服务器静态网页存放路径,默认情况下,所有的请求都以这个目录为基础。
该目录可以添加子目录,以及可以使用符号连接指定文件(即f:\test\ss.jsp,这样就可以访问计算机上任何位置的文件,因此它是不安全的,参数FollowSymLinks可以设置打开/关闭 支持符号的连接),请求时需要在请求路径上加上该子目录(符号)作为路径。
##5.目录控制

<Directory "${SRVROOT}/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None    
    Require all granted
</Directory>

如上是设置根目录以及其子目录下所有文件的访问权限控制,由于apache对一个目录的访问控制权限设置的是可以被下一级目录继承的,因此对根目录的设置将影响它的下一级目录。
Options中的indexs表示访问网页不存在的时候是否允许索引显示目录中的文件,FollowSymLinks表示是否允许访问符号连接文件。
AllowOverride设置对每个目录访问控制文件的影响,none表示不需要查看该目录下文件的访问控制权限,直接访问。
Require all granted 表示赋予请求所有的权限。
##6.dir_module

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

设置apache服务器的目录索引,这也是为什么我们安装好apache服务器后,只需要在地址栏输入localhost就可以请求到指定地址${SRVROOT}/htdocs下面的index.html。很多情况下,请求的url中并没有指定文档的名字,只是给了一个目录名,那么apache服务器会自动返回这个目录下由DirectoryIndex指定的文件列表,供用户选择,能否显示目录列表取决于Options Indexes的设置。预设多个索引文件名可以使用 空格 来分隔。
##7.控制请求

<Files ".ht*">
    Require all denied
</Files>

原文解释如下:The following lines prevent .htaccess and .htpasswd files from being viewed by Web clients.
##8.日志记录部分
ErrorLog "logs/error.log" 错误日志路径
LogLevel warn 错误日志级别

<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common
    <IfModule logio_module>
      # You need to enable mod_logio.c to use %I and %O
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>
    CustomLog "logs/access.log" common
    </IfModule>
<IfModule alias_module>

如上部分都是设置错误日志相关内容。
##9.命别名模块

<IfModule alias_module>
# Redirect permanent /foo http://www.example.com/bar
# Alias /webpath /full/filesystem/path
ScriptAlias /cgi-bin/ "${SRVROOT}/cgi-bin/"
</IfModule>

Redirect:它是用来重写url的,当浏览器访问服务器上一个已经不存在的资源的时候,服务器返回给浏览器新的url,告诉浏览器从新的url获取资源。
这主要用于原来存放于服务器上的文档,改变了位置之后,而又希望使用老的url可以访问到,用以保持与以前的url兼容。
Alias:给路径命别名,即前者是虚拟路径,后面才是真实的路径。其实就是起一个路径映射作用。ScriptAlias:它与Alias一样,也是映射路径用的,但是ScriptAlias只用于映射CGI程序的路径,这个路径下的文件都被定义成cgi程序,通过执行它们来获得结果,而非由服务器直接返回其内容。
##10.媒体类型模块

<IfModule mime_module>
TypesConfig conf/mime.types
#AddType application/x-gzip .tgz
#AddEncoding x-compress .Z
#AddEncoding x-gzip .gz .tgz
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
#AddHandler cgi-script .cgi .pl
#AddHandler type-map var
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml
</IfModule>

TypesConfig:记录媒体类型文件存放位置,默认是text/plain。
如果服务器上主要包含的是文本文档或html文档,"text/plain"是比较好的设置;如果服务器上主要是包含二进制文件,如应用程序或图片等,则应该设置成application/octet-stream。
AddType:它允许我们为某一些文件添加指定类型格式。
AddEncoding:添加一些压缩格式,告诉浏览器这些格式,让浏览器可以进行解压缩操作。
AddType:如果AddEncoding被注释掉了,则必须在这里定义扩展媒体类型。
AddHandler:用于处理非静态文件类型。
AddOutputFilter:添加过滤器,允许我们将处理结果过滤后在返给客户端。
##11.动态目录列表配置
Include conf/extra/httpd-autoindex.conf
##12.请求信息配置
Include conf/extra/httpd-info.conf
#3.虚拟主机
##1.mod_proxy_html

<IfModule proxy_html_module>
Include conf/extra/httpd-proxy-html.conf
</IfModule>

配置动态mod_proxy_html。
apache服务器本身具备代理的功能,如上的配置信息是:如果存在proxy_html_module模块,则导入该配置文件,即可以使用ProxyRequests打开代理支持。
备注:如果使用mod_jk作为代理的话,需要屏蔽这里,添加上mod_jk的配置文件。
##2.安全连接模块

<IfModule ssl_module>
#Include conf/extra/httpd-ssl.conf
Include conf/extra/httpd-ahssl.conf
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
<IfModule http2_module>
    ProtocolsHonorOrder On
    Protocols h2 h2c http/1.1
</IfModule>

转载于:https://my.oschina.net/u/2312022/blog/749766

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值