前言
在主域名申请了SSL证书后,我们有可能需要为二级域名也申请SSL证书,当然,如果你的域名证书是泛域名的。就不需要再单独为二级域名申请证书了,可以通过浏览器的安全锁点击证书查看:
比如我的网站证书颁发给了oldpan.me,不是泛域名,需要单独为二级域名申请证书。如果是泛域名证书是*.oldpan.me这种格式的就不需要再申请了。
正文
为什么网站要申请二级域名,其实二级域名和二级目录选择哪一个一直是争论的对象(二级目录就是你网站通过/来分割的,比如oldpan.me/m 就是二级目录,而 m.oldpan.me 则是二级域名)。二级域名可以继承一些一级域名的流量和权重,但是相比于二级目录还是稍微麻烦些。
我之所以要申请二级域名其实有一点原因是我的主域名 oldpan.me 在通过 www.oldpan.me 访问的时候会出现301跳转。也就是如果访问 www.oldpan.me 我的网站会自动跳转到 oldpan.me 上。这种跳转属于301永久性跳转。虽然这个对爬虫蜘蛛比较友好,但是有些时候还是跳转还是有些缺点的,例如熊掌号,在熊掌号中只能提交 www.开头的主域名链接或者 验证了的二级域名链接,而我如果提交一篇文章的话我只能提交 www 开头的链接,但是熊掌号在爬我的网站时会发现我的网站有301跳转,从而会返回页面重定向的错误:
当然也可以通过修改主页面,使www.不跳转,但是这样就需要修改主站的默认地址,会造成一些影响,所以采用二级域名的方式来实现通过二级域名访问主站内容不会发生301跳转。
二级域名
这里我设置的二级域名是 m.oldpan.me ,设置二级域名很简单,在域名所在的服务商中修改解析:
创建一个CHAME的记录类型,主机记录写m,记录值写到主域名即可,当然也可以通过A记录到服务器的IP地址。
二级域名设置完成后,过几分钟就可以通过二级域名来进行访问了,如果通过https 访问,显然浏览器会提示这个网站没有证书,安全锁会出现红色叉号。
所以现在要做的就是为二级域名申请一张SSL证书即可。
SSL证书
SSl证书,对我来说个人网站免费的即可,申请免费证书很简单,在腾讯云、七牛云、又拍云上都可申请免费的SSL证书。
这里我申请的是TrustAsia免费证书,有效期一年:
有效期一年快过了可以重新申请,然后修改nginx配置即可。
在申请完证书后,可以查看你申请证书平台的安装指引,下载需要的证书然后上传到你的网站服务器上,按照服务器构架来选择不同的方式,比如我是nginx,我就需要在nginx的conf配置文件中添加以下代码:
server {
listen 443;
server_name www.domain.com; #填写绑定证书的域名
ssl on;
ssl_certificate 1_www.domain.com_bundle.crt;
ssl_certificate_key 2_www.domain.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
ssl_prefer_server_ciphers on;
location / {
root html; #站点目录
index index.html index.htm;
}
}
也就是在nginx的conf文件中添加一段server,这段server除了上面的网站地址配置部分不同,其余的可以直接copy主域名的server部分。
在修改完后,重启nginx就可以看到网站旁边的小绿锁了。