apache note Apache 学习笔记(心得)
# 只允许特定IP 段访问, 例: Allow from 10.10.10.0/255.255.0.0
# Deny
# 拒绝所有地址访问目录, 例: Deny from all
# 拒绝特定域名访问目录, 例: Deny from www.google.com
# 拒绝特定IP访问目录, 例: Deny from 218.15.84.152
# 拒绝某个IP段访问上当, 例: Deny from 10.10.10.0/255.255.0.0
# Allow & Deny 混合使用
# 拒绝所有地址的访问, 但接受 Google 的访问, 例:
# <Directory "J:/Document/">
# Options FollowSymLinks
# Order Deny, Allow
# Deny from all
# Allow from www.google.com
# </Directory>
# 接受所有地址的访问, 但拒绝 Google 的访问, 例:
# <Directory "J:/Document/">
# Options FollowSymLinks
# Order Deny, Allow
# Deny from www.google.com
# Allow from all
# </Directory>
# Options
# 语法: Options [+|-]可选项 [[+|-]可选项] ...
# 配置在特定目录使用哪些特性,
# Options指令控制了在特定目录中将使用哪些服务器特性。
# 可选项能设置为None,在这种情况下,将不启用任何额外特性。
# 或设置为以下选项中的一个或多个:
# All, 除MultiViews之外的所有特性。这是默认设置。
# ExecCGI, 允许执行CGI脚本.
# FollowSymLinks, 服务器会在此目录中使用符号连接。
# 注意:即便服务器会使用符号连接,但它不会改变用于匹配<Directory>配置段的路径名。
# 注意:如果此配置位于<Location>配置段中,则此设置会被忽略。
# Includes, 允许服务器端包含。
# IncludesNOEXEC,允许服务器端包含,但禁用#exec命令和#exec CGI。
# 但仍可以从ScriptAliase目录使用#include 虚拟CGI脚本。
# Indexes, 如果一个映射到目录的URL被请求,
# 而此目录中又没有DirectoryIndex(例如:index.html.zh-cn.gb2312),
# 那么服务器会返回一个格式化后的目录列表。
# MultiViews,允许内容协商的多重视图。
# SymLinksIfOwnerMatch, 服务器仅在符号连接与其目的目录或文件拥有者具有同样的用户id时才使用它。
# 注意:如果此配置出现在<Location>配置段中,此选项将被忽略。
# AllowOverride
# 语法: AllowOverride All|None|指令类型 [指令类型] ...
# 说明: 允许存在于.htaccess文件中的指令类型
# 当服务器发现了一个.htaccess文件(由AccessFileName指定)时,
# 它需要知道在这个文件中声明的哪些指令能覆盖在此之前指定的访问信息。
# AllowOverride仅在<Directory>小节中才是有效的。在<Location>或<Files>小节中都是无效的。
# 如果此指令设置为None,那么.htaccess文件将被完全忽略。
# 在这种情况下,服务器甚至都不会试着从文件系统读取.htaccess文件。
# 当此指令设置为All时,所有具有.htaccess 上下文的指令都允许出现在.htaccess文件中。
########4. .htaccess
# 提示:允许使用 .htaccess 文件将会导致服务性能的下降。
# 另外,每次请求一个页面时,都需要读取.htaccess文件。
# 开启 .htaccess 支持必须 这样设置 AllowOverride all, 例:
# Alias /v "J:/pwd/"
# <Directory "J:/pwd/">
# Options Indexes
# AllowOverride all
# Order allow,deny
# Allow from all
# </Directory>
# 如果网络站点上有些敏感信息或只希望为一个小群体所访问,
# 这里介绍几个方法确保使用户只能访问允许被访问的资源。
# 通常在 <Directory> 段或针对单个目录的配置文件(.htaccess files)。
# 如果希望使用 .htaccess 文件, 则必须设置服务器以允许在这些文件中使用认证指令,
# 即,用 AllowOverride 指令 指定哪些指令在针对单个目录的配置文件中有效。
# 用密码来保护服务器上的目录, 首先需要建立一个密码文件。
# 这个文件可以放在不能被网络访问的位置,以避免被下载,
# 例如: G:\Apache 以外的空间不能被网络访问,
# 那么可以考虑把密码文件放在 G:\Apached 目录中。
# Apache在其安装目录的 bin 子目录中提供了叫 htpasswd 的工具,
# 以建立密码文件,可以这样使用:
# (先切换到Apache 安装目录, 例: C:\Program Files\Apache Group\Apache2\bin)
# 在命令行输入: htpasswd -c G:/Apache/passwords E
# (这样就建立了一个用户 E, 具体按自己需要设置用户和密码)
# 接着会要求你输入密码, 然后再输入一次,检验密码.
# 这样在 G:Apache\ 就多了一个 passwords 文件(没有后缀名)
# Windows 下的话会用 MD5 加密密码.
# 然后在要 设置权限的目录里建立一个 .htaccess 文件,
# .htaccess 文件的内容是:
# AuthType Basic
# AuthName "Restricted Files"
# AuthUserFile G:/Apache/passwords
# Require user E
# 演示页面: http://gi.2288.org:88/v
# 用户: E 密码:testhtpasswd
# 注: 目录必须允许 AllowOverride all ,这样 .htaccess 文件才能生效.
########5. Log
# Apache 的日志文件可以提供非常多的信息, 很有必要了解这些日志
# C:\Program Files\Apache Group\Apache2\logs (Windows 中的日志文件存放处)
# access.log(访问日志,了解客户端所访问的内容) & error.log(错误日志)
# 自定义日志格式
# mod_log_config
# 状态: Base
# 说明: 将对服务器发起的请求记录到日志
# 默认: CustomLog logs/access.log common
# 推荐设置:
# CustomLog logs/access_log "%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i""
# LogFormat
# 默认值: LogFormat "%h %l %u %t \"%r\" %>s %b"
# 语法: LogFormat format|nickname [nickname]
# 说明: 定义日志文件里的记录格式
# 例: LogFormat "%v %h %l %u %t \"%r\" %>s %b" vhost_common
# CustomLog
# 状态: Base
# 语法: CustomLog file|pipe format|nickname [env=[!]environment-variable]
# 说明: 设定日志的文件名和格式
# 例: CustomLog logs/access_log "%h %l %u %t \"%r\" %>s %b"
# ErrorLog
# 语法: ErrorLog 文件路径|syslog[:facility]
# 默认值: ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows and OS/2)
# 说明: 定位服务器存放错误日志的位置
# 例: ErrorLog "G:/Apache/dummy-gi.2288.org.88-error_log"
# CookieLog
# 语法: CookieLog filename
Tags:apache,note,Apache,学习,笔记,心得

