在Apache中使用.htaccess文件

5

在 Web 应用程序的所有主目录中使用“deny from all”指令的 .htaccess 是否会出现任何性能问题?谢谢。


1
使用.htaccess的主要“性能问题”是服务器必须在所请求路径中的每个目录中查找是否有.htaccess … 避免这种情况的唯一方法是在服务器或虚拟主机配置中完成所有配置,并完全禁用通过.htaccess进行每个目录配置。 - CBroe
2个回答

7
使用.htaccess文件会拖慢Apache的速度。如果可能的话,请修改主服务器配置文件(通常称为httpd.conf)。
从手册中得知:
你应该完全避免使用.htaccess文件,如果你可以访问httpd主服务器配置文件。使用.htaccess文件会减慢Apache http服务器的速度。任何您可以在.htaccess文件中包含的指令都最好在一个Directory块中设置,因为它将具有更好的性能和相同效果。
详情请参阅http://httpd.apache.org/docs/current/howto/htaccess.html
另一方面,如果您想讨论或争论性能损失与维护便捷性之间的损失,请查看Simon Greenhill的这篇文章和他的基准测试结果。

3
我找到了一篇文章,解释了为什么.htaccess可能会减慢您的Apache服务器速度,这与此问题有关。
从文章中可以看到:
.htaccess页面可能会稍微减慢您的服务器;对于大多数服务器来说,这可能是不可感知的变化。这是因为页面位置的原因:.htaccess文件影响其目录中的页面以及其下所有目录中的页面。每次加载页面时,服务器都会扫描其目录以及任何在其上方的目录,直到达到最高目录或.htaccess文件。只要AllowOverride允许使用.htaccess文件,无论.htaccess文件实际存在与否,此过程都将发生。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接