我偶然看到了一篇文章,标题是“高效的 301 重定向“”。
例如,如果您尝试将您的网站从 www 重定向到非 www 域,则文章建议与此 .htaccess/httpd.conf 规则进行比较:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domainname\.com$ [NC]
RewriteRule ^(.*)$ http://domainname.com/$1 [R=301,L]
</IfModule>
这将是一个更有效的 301 重定向(尽管只是稍微):
<IfModule mod_alias.c>
Redirect permanent / http://domainname.com/
</IfModule>
问题:后一条规则真的有效吗(哪怕是稍微有效)?
答案1
回答你的问题:是的,文章也说明了原因:
...通过使用 Apache 的 Redirect 指令和 Nginx 的 return 指令,我们可以有效地避免进行任何捕获或匹配,从而我们可以完全避免对正则表达式的评估。
它只是跳过一些评估步骤。
我想看看针对此解决方案/调整的性能测试