经过一天的折腾,终于把wordpress启用https!很奇怪的是,添加SSL证书之后,居然https和http都可以访问。怕http被标注为“不安全”而影响SEO和访问体验,觉得有必要做一下301重定向。网上找了很多段代码,有的简单也有的复杂,添加或替换到.htaccess文件后,不是只能定向首页就是搞得整站都无法访问。都快要放弃的时候,终于找到一段简单、且能全站301定向的.htaccess规则:
如果是没有htaccess规则,可以直接用以下规则:
- <IfModule mod_rewrite.c>
- RewriteEngine On
- RewriteCond %{HTTPS} off
- RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
- </IfModule>
如果已有如下默认规则,则修改为:
- <IfModule mod_rewrite.c>
- RewriteEngine On
- RewriteBase /
- RewriteCond %{HTTPS} !=on
- RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
- # BEGIN WordPress
- RewriteRule ^index\.php$ – [L]
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteRule . /index.php [L]
- </IfModule>
- # EDN WordPress
就是把上面红字段添加入已有的规则中。经测试,在wordpress完美运行!令阿柯意外的是,把这段红色代码添加到另一个网站的.htaccess规则中,竟仍然能完美实现301重定向!必须推荐!必须收藏!
2条评论
用的Nginx的301跳转,感觉Nginx比apache稍微好用一些,但是处理动态php的能力不如apache
对于我这些小白来说,简单、实用就行。太专业的东西,也没办法搞懂