将 http 全站301重定向到 https 并且不带www转跳到带www的网址

  • 一一得一
  • 技术分享
  • Apr 08, 2022

网站安装SSL证书开启HTTPS后,不设置强制跳转的话,http和https会同时存在,不利于SEO,所以需要全站301重定向到https。

.htaccess文件时Apache环境下的配置文件,通过.htaccess文件,可以帮我们实现网页301重定向等功能。

.htaccess文件在哪?
在你的站点根目录,没有就自己创建一个。

本教程用.htaccess文件可以将HTTP强制跳转到HTTPS。

在.htaccess文件中加入以下规则:
 

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R=301,L]
</IfModule>
 

以上方法,通过.htaccess设置301将HTTP重定向到HTTPS是最为常见的方法。

二:不带www跳转到带www
 

RewriteCond %{http_host} ^yiyideyi.top [NC]
RewriteRule ^(.*)$ https://www.yiyideyi.top/$1 [L,R=301]

三:带www跳转到不带www

RewriteCond %{http_host} ^www.yiyideyi.top [NC]
RewriteRule ^(.*)$ https://yiyideyi.top/$1 [L,R=301]
 

结合一下:http跳转https且不带www跳转到不带www

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R=301,L]
 
RewriteCond %{http_host} ^yiyideyi.top [NC]
RewriteRule ^(.*)$ https://www.yiyideyi.top/$1 [L,R=301]
</IfModule>


以上方法,通过.htaccess设置301将HTTP重定向到HTTPS后在跳转不带www的到带www

打赏