阿里云服务器 http 转 https

时间:2021-09-07 03:01:54

转载: http://blog.csdn.net/zzp961224/article/details/78934310

做个笔记 以备遗忘。

环境:

  • 阿里云云服务器    Windows Server 2008 标准版 SP2 中文版(趁1212优惠买的一年的水货配置)
  • 阿里云购买的域名(已备案、已解析)
  • 服务器:phpstudy:php5.4.45+Apache(因为是phpstudy集成的,所以没找到apache的版本,我感觉应该是2.4.8之前的版本)
  • SSL证书 (配置过程中,我申请了2个不同机构的证书,第一个GG了,是在   https://www.trustasia.com/   申请的1年免费证书。成功的是用的第二个,在  https://www.myssl.cn/products/freessl.html   申请的1个月的试用证书。所以是我技术问题还是???)

步骤:

    1. 申请证书(某度很多教程的,大家自行搜索)
    2. 上传证书

      登陆阿里云控制台=》安全(云盾)=》CA证书服务=》上传原有证书(也可以直接买阿里云的证书,这样就不用上传,不过个人网站一般是申请免费的证书)

    3. 开启服务器443端口(https默认端口) 

      阿里云控制台=》云计算基础服务=》云服务器ECS=》网络和安全=》安全组,没有安全组的创建一个安全组,有的直接选择相应安全组,点击配置规则=》添加安全组规则(把80端口和443端口添加进安全组,授权对象填0.0.0.0/0)

    4. 开启apache相应配置
      #修改httpd.conf文件

      LoadModule ssl_module modules/mod_ssl.so
      Include conf/extra/httpd-ssl.conf
      LoadModule rewrite_module
      #去掉上面三行前的"#"
      保存退出

    5. 在apache目录下的conf目录下新建一个cert目录,将你的证书文件放在这里面
    6. 开启php的openssl模块,在phpstudy的“php扩展及设置”里面开启即可
    7. 修改httpd-ssl.conf文件,保存退出
      在..\Apache\conf\extra目录下,打开httpd-ssl.conf文件(注:先备份一遍,以免出错,因为这个文件的错误我重装phpstuy不下10回)
      在文件里定位到  Listen 443  这句话这里,把  从这句话到这个文件结尾的文本    全部注释掉或者删除掉,替换成以下代码
      Listen 443               //这里强调一下,如果Listen 443这句代码在这个文件里重复出现了,即重复监听,apache会报错,然后不能启动
      SSLStrictSNIVHostCheck off
      SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
      SSLProtocol all -SSLv2 -SSLv3
      <VirtualHost *:443>
          #这里的路径设置你的网站根目录
          DocumentRoot "C:\phpStudy\PHPTutorial\WWW"   
          #这里xxxxx.com替换成你的域名
          ServerName www.xxxxx.com     
          #这里xxxxx.com替换成你的域名
          ServerAlias xxxxx.com           
          #这里的路径设置你的网站根目录     
          <Directory "C:\phpStudy\PHPTutorial\WWW">       
              Options FollowSymLinks ExecCGI
              AllowOverride All
              Order allow,deny
              Allow from all
              Require all granted
          </Directory>
          SSLEngine on
          #你的公钥文件
          SSLCertificateFile "C:/phpStudy/PHPTutorial/Apache/conf/cert/server.crt"              
         #你的私钥文件(有的机构命名为private或者以你的域名为文件名命名)
          SSLCertificateKeyFile "C:/phpStudy/PHPTutorial/Apache/conf/cert/server.key"      
          #证书链文件(有的机构命名为CA) 我尝试过注释掉这个选项,结果apache不能运行
          SSLCertificateChainFile "C:/phpStudy/PHPTutorial/Apache/conf/cert/chain.crt"         
      </VirtualHost>
    8. 重启apache,看看能不能正常启动,如果有异常,尝试把第4步中httpd-ssl.conf代码恢复注释(把#重新加上去,保存退出),再次重启apache,如果此时能够正常启动,则说明httpd-ssl.conf文件中有错误(是不是重复监听了?证书路径对不对?证书是否有效?),请认真检查,直到能够正常启动apache
    9. 打开hosts文件
      我的hosts文件在C:\Windows\System32\drivers\etc目录下
      用记事本打开,在127.0.0.1       localhost下面添加一句话:
      127.0.0.1       www..xxxxx.com     //这里替换成你的域名
      保存退出
    10. 修改.htaccess文件,使域名重定向到https(这样访问域名的时候就不用手动写https://,它会自动添加的)
      在你的网站的根目录(我的是WWW目录)下添加或者修改.htaccess文件,代码如下
      RewriteEngine On
      RewriteCond %{SERVER_PORT} 80
      RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R,L]
      Options +FollowSymLinks
      order allow,deny
      allow from all 
      <IfModule mod_rewrite.c>
      RewriteEngine on
      RewriteBase /
      RewriteCond %{SERVER_PORT} !^443$
      RewriteRule (.*) https://%{SERVER_NAME}/$1 [R=301,L]
      </IfModule>
      保存退出
    11. 检查服务器是否已经关闭了windows自带的IIS服务器(因为可能会占用apache的80端口),检查是否关闭了系统防火墙,检查是否有其他程序占用了80或者443端口。确认都已经关闭后进行下一步     (这里给大家贴一个端口扫描工具用于检查:http://tool.chinaz.com/port/)
    12. 重启apache
    13. 启动浏览器检查是否可以访问localhost 及你的域名,并且域名头部标志为https。如果不能正常访问,请根据以上步骤重新检查。
    14. SSL配置成功,能够使用https访问你的域名了!

阿里云服务器 http 转 https的更多相关文章

  1. 小程序后端项目【Springboot框架】部署到阿里云服务器【支持https访问】

    前言: 我的后端项目是Java写的,用的Springboot框架.在部署服务器并配置https访问过程中,因为做了一些令人窒息的操作(事后发现),所以老是不能成功. 不成功具体点说就是:域名地址可以正 ...

  2. 阿里云服务器IIS启用HTTPS协议&lpar;转&rpar;

    https://www.cnblogs.com/randytech/p/7017188.html

  3. 阿里云服务器发送邮件:Connection could not be established with host smtp&period;qq&period;com &lbrack;Connection timed out &num;110&rsqb;

    阿里云服务器发送邮件:Connection could not be established with host smtp.qq.com [Connection timed out #110] 一.总 ...

  4. 【转载】阿里云服务器为网站选配Https证书

    数字证书是一个经权威授权机构数字签名.包含公开密钥拥有者信息以及公开密钥的文件,是权威机构颁发给网站的可信凭证.最简单的证书包含一个公开密钥.证书名称以及证书授权中心的数字签名,只在特定的时间内有效. ...

  5. 微信小程序阿里云服务器https搭建

    已更新 2018-11-20 1.什么是https?HTTPS(全称:安全套接字层上的超文本传输​​协议),是以安全为目标的HTTP通道,简单讲是HTTP的安全版.即HTTP下加入SSL层,HTTPS ...

  6. Springboot2&period;0部署阿里云服务器(nginx&plus;域名&plus;SSL)供Http和Https访问

    总算是弄出来了,先写下来供自己以后查阅. 1)首先你要有一个阿里云服务器,我用的是Centos7学生认证,10元/月,很便宜也很好用. 2)购买了域名,首年9元,很划算.域名买来之后经历了拍照备案,前 ...

  7. 阿里云服务器CentOS6&period;9 tomcat配置https安全访问

    应用场景 上线微信小程序的时候,域名要求https安全格式,否则获取数据异常. 第一步.SSL证书获取 获取SSL证书方式很多种,包括网页生成.工具生成等,这里我使用阿里云平台获取免费ssl证书的方法 ...

  8. 阿里云服务器上配置并使用&colon; PHP &plus; Redis &plus; Mysql 从配置到使用

    (原创出处为本博客,http://www.cnblogs.com/linguanh/) 目录: 一,下载 二,解压 三,配置与启动 四,测试 Redis 五,配置 phpRedis 扩展 六,综合测试 ...

  9. 在阿里云服务器(ECS)上从零开始搭建nginx服务器

    本文介绍了如何在阿里云服务器上从零开始搭建nginx服务器.阿里云服务器(ECS)相信大家都不陌生,感兴趣的同学可以到http://www.aliyun.com/product/ecs去购买,或到体验 ...

随机推荐

  1. 如何在MyEclipse上添加更换JRE

    如何在myeclipse上添加更换JRE 由于兼容性的问题,有些WEB项目会依赖jdk的版本.如果需要更换jdk,那么,知道如何更换JRE的方法很有必要. 一种在myeclipse上添加和更换JRE的 ...

  2. 1、B2BUA

    链接1:proxy和B2BUA的区别和联系:http://www.cnblogs.com/gnuhpc/archive/2012/12/11/2813499.html 链接2:http://blog. ...

  3. 简直要逆天!超炫的 HTML5 粒子效果进度条

    我喜欢粒子效果作品,特别是那些能够应用于实际的,例如这个由 Jack Rugile 基于 HTML5 Cavnas 编写的进度条效果.看着这么炫的 Loading 效果,即使让我多等一会也无妨:)你呢 ...

  4. 携手K2 BPM,华住酒店完美实现&OpenCurlyDoubleQuote;互联网&plus;”转型

    华住酒店集团,旗下6大品牌酒店,包括商旅品牌—禧玥酒店.全季酒店.星程酒店.汉庭酒店.海友酒店,以及度假品牌—漫心度假酒店.高端大气上档次一气呵成,2013年签约K2,携手成就美好生活. 演讲人:宋洪 ...

  5. php 获取文件后缀名

    $file_ext = strtolower(substr(strrchr($upload_file, '.'), 1)); strrchr:查找指定字符在字符串中的最后一次出现 string str ...

  6. Deepin Linux 安装JDK

    最近在自己的笔记本上安装了Deepin Linux,虽然使用过程中发现一些bugs,但是总体感觉还不错,准备把她作为开发系统使用.系统自带的JDK是Open JDK,但是在做JAVA开发的时候通常需要 ...

  7. poj 3013 SPFA

    首先看题看的很懵.. 然后这题直接没想用Djstra做 TLE了.看discuss,Dijstra要用堆优化,也可以用SPFA做. 这里在网上找了这两种做法的区别,点多稠密图用Dij,以为它是操作点的 ...

  8. Vue系列之 &equals;&gt&semi; 列表动画

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. MySQL 的日期类型有5个,分别是: date、time、year、datetime、timestamp。

    类型 字节 格式 用途 是否支持设置系统默认值 date 3 YYYY-MM-DD 日期值 不支持 time 3 HH:MM:SS 时间值或持续时间 不支持 year 1 YYYY 年份 不支持 da ...

  10. ostringstream的用法

    使用stringstream对象简化类型转换C++标准库中的<sstream>提供了比ANSI C的<stdio.h>更高级的一些功能,即单纯性.类型安全和可扩展性.在本文中, ...