首页 > 技术文章 > 如何让你的网站用上免费的HTTPS

linkstar 2017-05-24 18:12 原文

因为之前网站上被注入了广告,再百般尝试之后最后还是使用了HTTPS解决了。

在实现HTTPS的时候最关键的就是证书。

证书的质量觉得了你被多少浏览器所信任。

证书的价格也就蹭蹭蹭往上涨了。

 

这里推荐一个免费而且实用的证书供参考——阿里云的免费证书

下面有几个推荐的理由

1、免费1年

2、颁发机构为Symantec Corporation

3、绝大多数浏览器信任,还被手机浏览器所信任

4、证书的教程和使用说明详细

5、所有都是中文(入门容易)

 

下面就是简单的几个截图和申请的流程供参考。

QQ截图20170524144625

购买页面(一开始还以为要钱,结果是0元)

 

image

购买完成之后找到证书点击补全,补全时使用DNS验证

 

image

让系统生成CSR

 

image

提交后等一会然后点击进度

 

image

记住这些信息,然后填写到你购买域名的域名解析里面去

image

修改完成之后需要等待一段时间,因为DNS解析同步需要时间

如果完成之后之前的证书状态会变成已签发,然后点击下载证书就会进入下面的地方,然后就可以根据你的需要进行证书的安装和转换了。

image

因为其中几个容器如nginx和tomcat安装证书的方法配置已经比较详细,在这里就不多说了。

需要说明的是,毕竟证书是免费的,所以只能配单个域名,一个账户也最多使用20个免费的证书,所以还是要悠着点。

 

如果你使用的是java那么在web.xml的配置可以如下

<security-constraint>
        <web-resource-collection>
            <web-resource-name>项目名称</web-resource-name>
            <url-pattern>/*</url-pattern><!-- 全站使用SSL -->
        </web-resource-collection>
        <user-data-constraint>
            <description>SSL required</description>
            <!-- CONFIDENTIAL: 要保证服务器和客户端之间传输的数据不能够被修改,且不能被第三方查看到 -->
            <!-- INTEGRAL: 要保证服务器和client之间传输的数据不能够被修改 -->
            <!-- NONE: 指示容器必须能够在任一的连接上提供数据。(即用HTTP或HTTPS,由客户端来决定)-->
            <transport-guarantee>CONFIDENTIAL</transport-guarantee>
        </user-data-constraint>
</security--constraint>
 
 

推荐阅读