第一步,申请HTTPS证书
打开:https://freessl.cn/ ,可以为网站免费创建证书,如果没有特殊要求,选择有效期长达1年的TrustAsia证书,然后一路next就到了DNS验证这一步了,按照要求填写TXT记录如下:
验证成功后就可以获取到证书了,最终将会下载获取到三个文件,后两个是有用的,重命名后待使用。
第二步,配置Apache服务器
在Apache的vhost文件中添加/修改如下片段1
2
3
4
5
6
7
8
9<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/ssl/pmvincent.com.crt
SSLCertificateKeyFile /etc/ssl/pmvincent.com.key
ServerAdmin xxx@xxx.com
DocumentRoot "/xxx/pmvincent.com"
ServerName pmvincent.com
ServerAlias pmvincent.com www.pmvincent.com
</VirtualHost>
同时在http的配置中配置重定向:1
2
3
4
5
6
7
8
9<VirtualHost *:80>
ServerAdmin xxx@xxx.com
DocumentRoot "/home/www/htdocs/pmvincent.com"
ServerName pmvincent.com
ServerAlias pmvincent.com www.pmvincent.com
RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
</VirtualHost>
重启后生效。
小技巧:如何防止别人恶意解析
在Apache的vhost配置中增加如下,意思是除了vhost配置的,其它一律拒绝,其中ServerName为主机的IP地址:1
2
3
4
5
6
7
8<VirtualHost *:80>
ServerAdmin xxx@xxx.com
ServerName 1.x.x.x
ServerAlias *
<Location />
Require all denied
</Location>
</VirtualHost>