自从百度对 https 识别更加友好后,就打算把网站换成 https 一直没时间,昨天研究了一下还是挺简单的 简单记录一下过程吧
一、首先去阿里云申请免费的ssl 按照指引操作就可以了,申请完后等待审核,一般十几分钟就审核通过了,审核完成后下载 Apache 对应的证书就可以了
二、把下载好的证书上传到服务器,解压后放到 Apache 的安装目录里 D:\Apache\conf\ssl\ 可以新建一个目录 这里我们新建一个名字为 blog 的目录
三、然后进入到 D:\Apache\conf 目录下,在 conf 文件夹下 httpd.conf 中找到 #LoadModule ssl_module modules/mod_ssl.so 和 #Include conf/extra/httpd-ssl.conf 去掉前面的注释符,使得ssl模块生效(如果该模块已去掉注释,请不用操作,建议提前备份一下 httpd.conf 以免出问题)。
四、然后进入到 D:\Apache\conf\extra 目录下,在 extra 文件夹下找到 httpd-ssl.conf 打开 httpd-ssl.conf (建议提前备份一下 httpd-ssl.conf 以免出问题)把 <VirtualHost _default_:443>……一大堆 </VirtualHost> 全都删掉,然后粘贴以下内容
<VirtualHost *:443>
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
SSLCertificateFile "D:\Apache\conf\ssl\blog\xxx_public.crt" (阿里云下载的结尾为 public.crt 的文件地址)
SSLCertificateKeyFile "D:\Apache\conf\ssl\blog\xxx.key" (阿里云下载的结尾为 .key 的文件地址)
SSLCertificateChainFile "D:\Apache\conf\ssl\blog\xxx_chain.crt"(阿里云下载的结尾为 chain.crt 的文件地址)
ServerName "www.guopingblog.com" (网站域名)
ServerAlias "guopingblog.com"(网站域名)
DocumentRoot "D:\WEB\blog" (网站地址)
</VirtualHost>
五、重启 Apache (如果 Apache 重启失败 可能是服务器的443端口没开,或者是上面秘钥、网站的地址不对)
六、把网站内和域名相关的绝对地址都改成 https 开头的地址 比如引用的css、js、图片地址等,改完以后网站的小绿锁子就会出现了
七、在 .htaccess 文件里加以下代码 把 http 网址301跳转到 https 的网址,这样就大功告成
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
评论列表: