生命不息,折腾不止,现在https是大势所趋,由于本站是新站,所以折腾了下全站开始https。
方法/步骤
1、申请SSL证书
网站启用https首先得配置SSL证书,但是关键一点就是首先要拥有一个SSL证书。图个方便,也就直接在TX申请了免费一年的证书。申请证书地址在这里:https://console.cloud.tencent.com/ssl.相关的资料、价格参考在这里:https://cloud.tencent.com/document/product/400.
2、安装证书
下载得到的www.domain.com.zip文件,解压获得3个文件夹,分别是Apache、IIS、Nginx 服务器的证书文件,由于我的是LAMP环境,则以以Apache为例安装SSL证书为例。
Apache文件夹内获得证书文件 1_root_bundle.crt,2_www.domain.com_cert.crt 和私钥文件 3_www.domain.com.key,1_root_bundle.crt 文件包括一段证书代码 “-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”,2_www.domain.com_cert.crt 文件包括一段证书代码 “-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”,3_www.domain.com.key 文件包括一段私钥代码“-----BEGIN RSA PRIVATE KEY-----”和“-----END RSA PRIVATE KEY-----”。
根据实际情况编辑Apache根目录下conf/httpd.conf文件,找到#LoadModule ssl_module modules/mod_ssl.so和#Include conf/extra/httpd-ssl.conf(不同的httpd版本可能上述两行会有区别),去掉前面的#号注释。再编辑Apache根目录下 conf/extra/httpd-ssl.conf 文件,增加如下内容:
<VirtualHost 0.0.0.0:443> # 必须有一个虚拟主机,这样才可以使用跳转功能和使用443端口访问
DocumentRoot "/var/www/html"
Servername www.tracymc.cn
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLEngine on
SSLCertificateFile /yourpath/2_www.tracymc.cn.crt
SSLCertificateKeyFile /yourpath/3_www.tracymc.cn.key
SSLCertificateChainFile /yourpath/1_root_bundle.crt
</VirtualHost>
配置完成后,重新启动 Apache 就可以使用https来访问了。其它环境的配置https方法参考:https://cloud.tencent.com/document/product/400/4143
3、进入WP后台,进入设置-常规 将WordPress地址(URL)、站点地址(URL)两项修改为:https。
4、登录和后台强制开启SSL
通过修改WP-config.php文件,直接在文件末尾加入以下两行代码:
/* 强制后台和登录使用 SSL /
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
5、由于是新站,无需修改之前添加的各个链接或者多媒体文件等。
6、配置网站301重定向到https,在.htaccess文件增加如下内容:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !^on$ [NC]
RewriteRule (.) https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
7、检查网站。可通过 curl -I www.tracymc.cn查看是否已经301重定向到https。
8、排错。
最淡的墨水也胜过最强的记忆.
看看
不错。
[…] WordPress开启全站https […]