zoukankan      html  css  js  c++  java
  • 如何将网站升级为HTTPS协议?

    基本概念:

    HTTP: 是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准,用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。

    HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。

    很多用户目前对HTTPS持观望态度,当然网站升级HTTPS有利有弊,利当然是安全系数提升,降低劫持风险,弊端主要体现在速度上,由于证书验证、多次握手、CPU消耗等原因,https页面速度会被拖慢一点。

    谷歌、火狐等浏览器厂商也已经扛起HTTPS大旗,对于HTTP站点会提示不安全警告。而且像谷歌、百度等搜索引擎也早已相应HTTPS号召,都声称对HTTPS站点页面友好甚至优先抓取,排名靠前,当然具体实际实施情况就另当别论了,目前来看,谷歌做的要比百度更成熟一些。

    要让互联网站点都升级到HTTPS协议还需一段时间,但不可否认HTTPS是大势所趋。所以本文我们一起来了解下如何将网站升级到HTTPS协议。

    1.购买、下载SSL证书

    SSL证书有付费也有免费的,当然价格其实并不很高。之前我有整理过国内外几家知名的SSL商家,可供大家参考(http://www.jianshu.com/p/de19d99f1d41)

    2.备份,备份,备份

    这是极其重要且必须的一步。即便你自认为技术深厚,对服务器熟悉也不要忽视升级前做好网站备份。

    3.安装证书

    不同厂家或都提供了相应的安装证书的解决方案,流程大同小异。这里我以免费SSL证书为例,在LAMP环境下给大家介绍如何安装证书。

    打开apache的配置文件httpd.conf,找到

    #LoadModule ssl_module modules/mod_ssl.so
    
    #Include conf/extra/httpd-ssl.conf

    删除行首的配置语句注释符号“#

    保存退出。

    打开apache安装目录下conf/extra目录中的httpd-ssl.conf文件

    在配置文件中查找以下配置语句

    SSLCertificateFile conf/ssl.crt/server.crt 将服务器证书配置到该路径下
    
    SSLCertificateKeyFile conf/ssl.key/server.key 将服务器证书私钥配置到该路径下
    
    #SSLCertificateChainFile conf/ssl.crt/ca.crt 删除行首的“#”号注释符,并将中级CA证书 ca.crt配置到该路径下。

    添加SSL 协议支持语句,关闭不安全的协议和加密套件:

    SSLProtocol all -SSLv2 -SSLv3

    修改加密套件如下:

    SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;

    保存退出,并重启Apache。检查HTTPS页面能否成功访问。

    4.301重定向

    考虑到SEO影响,须将之前的HTTP页面转为HTTPS。我们修改配置文件即可,这里我还是以LAMP环境为例,在.htaccess文件中加下面代码即可:

    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

    总结:

    本文向大家介绍了网站升级HTTPS时必要流程,具体细节或因服务器环境不同和SSL证书商家不同而存在一些差异,但总体大同小异。如过大家在网站升级HTTPS过程中遇到疑难困惑或有成功经验,欢迎一起分享交流。

  • 相关阅读:
    大战设计模式【5】—— 工厂方法模式
    通过spring抽象路由数据源+MyBatis拦截器实现数据库自动读写分离
    大战设计模式【4】—— 简单工厂模式
    大战设计模式【3】—— 装饰模式
    大战设计模式【2】—— 观察者模式
    大战设计模式【1】—— 策略模式
    回顾:maven配置和常用命令整理
    idea properties文件unicode码问题
    Nginx学习笔记
    tomcat添加context方式部署web应用
  • 原文地址:https://www.cnblogs.com/chanzhi/p/7648804.html
Copyright © 2011-2022 走看看