自从启用新域名以来,一直没有注意过网址规范问题,直到最近在查看百度收录时才发现,百度居然同时收录了cmhello.com和www.cmhello.com以及各自下面的页面,而且这两个域名下的首页快照时间居然不一样,所以想想还是将cmhello.com域名301重定向到www.cmhello.com域名好些。
在网上搜索了相关知识,同时询问了几个QQ群上的朋友,终于在灰狼朋友的帮助下设置好了,记录一下,以后或许还会用到。
下面就是倡萌目前使用的代码,直接放到根目录的.htaccess文件下就OK啦。
1 2 3 4 5 6 7 8 9 10 11 12 | # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} ^cmhello.com$ [NC] RewriteRule ^(.*)$ https://www.cmhello.com/$1 [R=301,L] RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress |
说明:上面的代码是用在Linux Apache主机空间的,要求空间开启了mod_rewrite功能,不适用于windows主机。
上面的代码有两个功能,下面的是将cmhello.com域名301重定向到www.cmhello.com域名
1 2 | RewriteCond %{HTTP_HOST} ^cmhello.com$ [NC] RewriteRule ^(.*)$ https://www.cmhello.com/$1 [R=301,L] |
而下面的是WordPress伪静态支持规则
1 2 3 4 | RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] |
注:“将cmhello.com域名301重定向到www.cmhello.com域名”这个规则必须放在“WordPress伪静态支持规则”的上方,否则可能无法生效。
使用redirect-check检查生效啦: