使用htaccess文件会降低网站性能(特别是固态硬盘)的使用量?

Apache文档说( http://httpd.apache.org/docs/2.4/howto/htaccess.html ),

“如果你可以访问httpd主服务器的configuration文件,你应该完全避免使用.htaccess文件。使用.htaccess文件会降低你的Apache http服务器。你可以包含在.htaccess文件中的任何指令在目录块中设置得更好,因为它具有相同的效果和更好的性能。“

但是,这让我不知道影响的规模。

我有一个共享主机devise的架构,唯一的select是使用htaccess文件。

我正在转向数字海洋,在那里我可以做我喜欢的事情。

我需要判断是否坚持使用htaccess文件,或者从那里移动东西到集中的configuration文件并closures它们。

可能有100个小型低使用地点(当地企业)。

如果服务一个页面的性能下降大约在50ms以下,或者有一些其他的小问题,比如减less5%左右的并发访问次数,那么我不在乎。

如果效果足够大,人们可能会感觉到不同,那么我就足够花时间去改变事物了。

但是我没有发现任何事情给我一个指示,我可以期待什么次数的命中。

任何人都可以启发我吗?

编辑:我不寻找像确切的数字。 但是肯定有一个比我更能干的人做了一些基准testing,或者根据经验知道在特定情况下可能会有什么差别。

    对于1500行.htaccess文件显然是 12ms。

    数字海洋教程https://www.digitalocean.com/community/tutorials/how-to-use-the-htaccess-file说,

    “.htaccess页面可能会降低你的服务器的速度,对于大多数服务器来说,这可能是一个难以察觉的变化。”

    我引用了Joseph Pecoraro在.htaccess上的一个关于code.tutsplus.com的教程:

    而且,当启用[.htaccess]时,服务器将会受到潜在的性能影响。 原因是,每个服务器请求,如果启用了.htaccess支持,当Apache去为客户端获取请求的文件时,它必须在每个目录中寻找一个.htaccess文件,导致文件存储在哪里。

    这些潜在的文件访问(潜在的,因为文件可能不存在)和它们的执行(如果它们确实存在)将需要时间。 再一次,我的经验是,这是不明显的,并没有超过.htaccess文件提供给开发人员的好处和灵活性。

    对于你的情况,我个人的建议就像是“不要纠正那些没有破的东西”,因为时间和精力等于金钱,我完全同意你在这个评论中的推理 。

    httpd.conf被解析一次。 如果使用.htaccess,每次调用某个东西时都会触发。 这将导致相当大的性能打击,会随着请求的增加而变得更糟。

    由于影响取决于硬件的速度以及您愿意为文件缓存贡献多少内存,因此很难给出数字,但是让我举一个例子来说明影响 – 比如说你有一个WordPress的网站,需要提供位于/wp-content/uploads/2015/10/my.png的图片。

    服务这个文件可能需要1个磁盘访问,只是为了检查所有可能的.htaccess你将需要额外的5个磁盘访问。 如果文件很大,开销可能并不明显,但是对于一个小文件,甚至可能放在磁盘上的一个块中,你会浪费80%的时间来处理根本不需要的东西。

    尽管如此,足够大的缓存可以解决几乎所有的设计/编码问题,但是为了避免性能下降,您需要的缓存越大,目录越多。

    在你的具体情况下,它实际上是一个没有道理的人。 您已经生成了htaccess文件,所以您只需将它们包装到一个目录指令中,将其生成到某个目录中,并将其包含在http.conf中。 即使手动完成,也不会花费几个小时,之后你的服务器架构就会更好。