我很想知道在 Apache 上的 .htaccess 规则中,RewriteRules 和 Redirect 之间的速度是否有任何差异。
在我看来,RewriteRules 通常可以是复杂的正则表达式,我认为与 Redirect 相比会有开销(即使它非常小),这将是简单的字符串匹配(?)
所以,如果我有:
RewriteRule ^mytestpage\.html$ http://www.google.com [R=301, QSA]
对比
Redirect 301 /mytestpage\.html http://www.google.com/
我可能永远不会注意到差异,但如果我有 1000 个唯一重定向怎么办?还是 10,000?将其中一个用于另一个会冒险吗?
最佳答案
使用其中任何一种对速度的影响都可以忽略不计,您不会注意到任何差异。话虽如此,您应该使用正确的工具来完成这项工作。
做一个简单的重定向,你应该使用重定向而不是使用 Mod_Rewrite。该示例是重定向应该处理的事情。当您需要开始做更复杂的事情时,您可以考虑使用 Mod_Rewrite。
即使有 1000 或 10,000 次重定向,您也不会真正注意到很大的不同。但是它会使用更多的内存。如果那样的话,可能只有几MB。
所以回答你的问题,它真的不会产生真正的影响,但使用正确的工具来完成工作。
这应该有所帮助。
关于regex - 使用 Redirect 与 RewriteRule 的速度影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24203065/