通用指令
本节简要回顾一些常用的 Apache 配置指令。
主要的配置文件通常包括几个 目录 块; 它们允许根据所提供文件的位置为服务器指定不同的行为。 这样的块通常包括 可选项 和 允许覆盖 指令:
选项包括 FollowSymLinks AllowOverride All
目录索引 index.php index.html index.htm
选项包括 FollowSymLinks AllowOverride All
目录索引 index.php index.html index.htm
这个 目录索引 指令包含当客户端请求与目录匹配时要尝试的文件列表。 使用列表中的第一个现有文件并将其作为响应发送。
这个 可选项 指令后跟要启用的选项列表。 这 没有 value 禁用所有选项; 相应地, 全部 启用它们,除了 多视图。 可用的选项包括:
• 执行CGI— 表示可以执行 CGI 脚本。
• 关注符号链接— 告诉服务器可以跟踪符号链接,并且响应应包含此类链接的目标内容。
• 符号链接如果所有者匹配- 也告诉服务器遵循符号链接,但前提是链接和它的目标具有相同的所有者。
• 包括——启用 服务器端包括 (SSI)。 这些是嵌入在 HTML 页面中并针对每个请求即时执行的指令。
• 指数——如果客户端发送的 HTTP 请求指向一个没有索引文件的目录(即当 目录索引 该目录中存在指令)。
• 多视图——启用内容协商; 服务器可以使用它来返回与浏览器中配置的首选语言匹配的网页。
要求身份验证 在某些情况下,需要限制对网站部分内容的访问,因此只有提供用户名和密码的合法用户才能访问内容。
这个 的。htaccess 文件包含每次请求涉及目录中的元素时强制执行的 Apache 配置指令 的。htaccess 文件被存储。 这些指令是递归的,将范围扩展到所有子目录。
大多数指令可以出现在 目录 块也是合法的 的。htaccess 文件。 的 允许覆盖 指令列出了可以通过以下方式启用或禁用的所有选项 的。htaccess. 此选项的常见用途是限制 执行CGI,以便管理员选择允许哪些用户以 Web 服务器的身份运行程序( www数据 用户)。
例子5.3 的。htaccess 需要认证的文件
需要有效的用户
AuthName “私人目录” AuthType Basic
AuthUser文件 /etc/apache2/authfiles/htpasswd-private
需要有效的用户
AuthName “私人目录” AuthType Basic
AuthUser文件 /etc/apache2/authfiles/htpasswd-private
基本认证 上面例子中使用的认证系统(基础版) 具有最低限度的安全性 不提供安全保障 因为密码以明文形式发送(它仅编码为 base64,这是一种简单的编码而不是加密方法)。 还应该指出的是,文件
受此机制保护的信息也会以明文形式通过网络。 如果安全很重要,则整个 HTTP 会话应使用传输层安全 (TLS) 进行加密。
基本认证 上面例子中使用的认证系统(基础版) 具有最低限度的安全性 不提供安全保障 因为密码以明文形式发送(它仅编码为 base64,这是一种简单的编码而不是加密方法)。 还应该指出的是,文件
受此机制保护的信息也会以明文形式通过网络。 如果安全很重要,则整个 HTTP 会话应使用传输层安全 (TLS) 进行加密。
这个 /etc/apache2/authfiles/htpasswd-private 文件包含用户和密码列表; 它通常被操纵 密码 命令。 例如,以下命令用于添加用户或更改其密码:
# htpasswd /etc/apache2/authfiles/htpasswd-private 用户
新密码:
重新输入新密码:
为用户添加密码 用户
# htpasswd /etc/apache2/authfiles/htpasswd-private 用户
新密码:
重新输入新密码:
为用户添加密码 用户
限制访问 这个 要求 指令控制目录(及其子目录,递归)的访问限制。
它可用于根据许多标准限制访问; 我们将停止描述基于客户端 IP 地址的访问限制,但它可以比这更强大,特别是当几个 要求 指令组合在一个 需要全部 块。
例如,您可以使用以下指令限制对本地网络的访问:
需要 ip 192.168.0.0/16
需要 ip 192.168.0.0/16