![](/img/trans.png)
[英]Redirecting from https://example.com to https://www.example.com in htacess
[英]Avoid multiple page redirects http://example.com > https://example.com -> https://www.example.com
如果用户键入 domain.com,GTMetrix 和 Google Pagespeed Insights 报告说,我的网站由于多个页面重定向而变慢:
URL: TIME SPENT:
http://example.com/ 285ms
https://example.com/ 452ms
https://www.example.com 0ms
我试图只获得一个(有条件的?)重定向,它总是会出现在 https 和 www 子域中。
这是当前的 htaccess 代码:
RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$
RewriteRule ^ https://www.%1%{REQUEST_URI} [NE,L,R]
它有效,但是有没有人痴迷于速度,可以帮助它更快地进入一个重写条件?
我在堆栈溢出(和其他地方)进行了无休止的搜索,但没有其他选择可以将一条语句中的所有内容与条件结合起来,并使其比目前的解决方案更快。
我真的很感激你的见解!
将 R 标志更改为 301:
RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$
RewriteRule ^ https://www.%1%{REQUEST_URI} [NE,L,R=301]
因为默认情况下,它是一个 302(临时)重定向,您可以避免很多重定向。 http://httpd.apache.org/docs/current/rewrite/flags.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.