之前一直困扰一个问题,那就是申请到了ssl证书那么应该如何应用到网站上?
因为我用的是Apache服务器,并且通过apt-get安装的,似乎跟那个通用版还不太相同?
闲话少叙。
之前有提到过申请免费SSL证书。我用的就是这个证书,不信点上边的小锁子自己看看。。。↑_↑
首先打开申请的证书压缩文件,可以看到对于Apache版本,有这样三个文件:
然后我们将这三个文件上传到服务器上,你可以上传到任何一个文件夹,我上传在:/etc/ssl
然后就是将它加载到Apache中。
第一步:打开Apache的ssl模块
这个只需要一条命令:
# a2enmod ssl
第二步:配置虚拟服务器
打开配置文件:/etc/apache2/sites-available/default-ssl.conf
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ServerName www.tiferking.cn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/ssl/2_tiferking.cn.crt
SSLCertificateKeyFile /etc/ssl/3_tiferking.cn.key
SSLCACertificateFile /etc/ssl/1_root_bundle.crt
<FilesMatch “\.(cgi|shtml|phtml|php)$”>
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch “MSIE [2-6]” \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
BrowserMatch “MSIE [17-9]” ssl-unclean-shutdown
</VirtualHost>
</IfModule>
只需要将上述文字中所有的tiferking.cn改成你自己的域名,然后再在/etc/apache2/sites-enabled目录下建立一个链接就OK了!你可以通过这条命令来完成:
# ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/001-ssl.conf
当然假如你将证书文件放在其它地方就将SSLEngine on后边那几个文件的路径改好就可以啦~
第三步:跳转http到https
这个功能一般是通过.htaccess实现的,将以下代码复制到网站根目录的.htaccess文件当中,如果没有的话可以新建。
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.tiferking.cn/$1 [R,L]
将上述文字中的tiferking.cn改成你自己的域名,然后保存。
再打开 /etc/apache2/apache2.conf
找到里边的
Options FollowSymLinks
AllowOverride None
改为
Options FollowSymLinks
AllowOverride All
保存。
再运行以下代码打开rewrite模块:
# ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load
第四步:重启Apache
输入命令重启Apache:
# apache2ctl -k restart
至此,所有的工作就完成啦,测试以下你的网站有没有绿色小锁了吧~