我应该在 Apache 生产/实时环境中使用 .htaccess 吗?

我应该在 Apache 生产/实时环境中使用 .htaccess 吗?

有什么原因(安全性、性能等)导致我不应该在 Apache 生产/实时环境中使用 .htaccess?

答案1

.htaccessApache 的官方建议是,除非绝对必要,否则避免使用。

如果AllowOverride设置为除 之外的任何值None,则系统接收到的每个针对AllowOverride启用了 的上下文的请求都将导致 Apache 进程在文件系统树的每个部分中检查.htaccess可能包含.htaccess适用于当前请求的文件。

这里

一般来说,除非您无权访问主服务器配置文件,否则永远不要使用 .htaccess 文件。例如,有一种普遍的误解,认为用户身份验证应始终在 .htaccess 文件中完成。事实并非如此。您可以将用户身份验证配置放在主服务器配置中,事实上,这是首选的做法。

如果内容提供商需要逐个目录更改服务器配置,但又没有服务器系统的 root 访问权限,则应使用 .htaccess 文件。如果服务器管理员不愿意频繁更改配置,则可能需要允许各个用户自己在 .htaccess 文件中进行这些更改。例如,如果 ISP 在一台机器上托管多个用户站点,并希望其用户能够更改其配置,则尤其如此。

但是,一般来说,应尽可能避免使用 .htaccess 文件。任何您想放入 .htaccess 文件的配置都可以在主服务器配置文件的某个部分中有效地完成。

答案2

这取决于您的要求。

.htaccess 机制存在的技术原因是,除了站点管理员之外的其他人可以更改他们控制的本地配置,而无需访问全局 apache 服务器配置。

这与安全性没有太大关系,但使用许多 .htaccess 文件会影响性能。

相关内容