阿里云服务器apache配置SSL证书成功开启Https(记录趟过的各种坑)

环境:

阿里云云服务器    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个月的试用证书。所以是我技术问题还是???)

步骤:

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

上传证书

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

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

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

开启apache相应配置

#修改httpd.conf文件
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf
LoadModule rewrite_module
#去掉上面三行前的"#"

保存退出

在apache目录下的conf目录下新建一个cert目录,将你的证书文件放在这里面

开启php的openssl模块,在phpstudy的“php扩展及设置”里面开启即可

修改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>

重启apache,看看能不能正常启动,如果有异常,尝试把第4步中httpd-ssl.conf代码恢复注释(把#重新加上去,保存退出),再次重启apache,如果此时能够正常启动,则说明httpd-ssl.conf文件中有错误(是不是重复监听了?证书路径对不对?证书是否有效?),请认真检查,直到能够正常启动apache

打开hosts文件
我的hosts文件在C:\Windows\System32\drivers\etc目录下
用记事本打开,在127.0.0.1       localhost下面添加一句话:
127.0.0.1       www..xxxxx.com     //这里替换成你的域名
保存退出

修改.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>

保存退出

检查服务器是否已经关闭了windows自带的IIS服务器(因为可能会占用apache的80端口),检查是否关闭了系统防火墙,检查是否有其他程序占用了80或者443端口。确认都已经关闭后进行下一步     (这里给大家贴一个端口扫描工具用于检查:http://tool.chinaz.com/port/)

重启apache

启动浏览器检查是否可以访问localhost 及你的域名,并且域名头部标志为https。如果不能正常访问,请根据以上步骤重新检查。

SSL配置成功,能够使用https访问你的域名了!

(0)

相关推荐

  • 阿里云服务器apache配置SSL证书成功开启Https(记录趟过的各种坑)

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

  • Mac 下阿里云服务器的配置方法

    最近阿里云服务器在搞活动9.9元半年.就买来配置玩下. 按照购买流程 公共镜像:选择第一个CentOs,<建议使用稍低版本 ,CentOs使用比较多些> 之后会有一个公网IP 和私有IP, 这里我们使用公网IP .下面2种方式都可以配置服务器,建议使用2 1. 在购买设置界面找到->实例详情 -> 远程连接 会进入你的购买服务器操作系统 输入账号 密码 2. 使用软件CyberDuck 连接你服务器并且在mac 终端上$ ssh root@123.36.222.22 (公网IP)之

  • 阿里云服务器ubuntu 配置教程

    由于阿里云的导入自定义 ubuntu 镜像需要开通 OSS 快照是收费的(看着感觉不贵,但是也很麻烦),而且自己已配置好的镜像想导入需要转换格式,还存在不能使用的情况,所以麻烦点直接在阿里云原来的ubuntu里直接配置需要用到的内容. 首先,阿里云服务器ubuntu默认是14.04版本的,需要登录阿里,进入控制台-ESC实例-管理-暂停服务器-更新系统盘(配置信息块的更多选项)-公共镜像-这里我选择ubuntu16.04的64位(目前阿里云公共镜像最高版本ubuntu16.04). 0.安装 s

  • 在阿里云服务器上配置CentOS+Nginx+Python+Flask环境

    项目运行环境 阿里云(单核CPU, 1G内存, Ubuntu 14.04 x64 带宽1Mbps), 具体购买和ssh连接阿里云本文不做描述. 实用工具 首先进入阿里云后先要升级下apt-get, 并下载所需软件 sudo apt-get update sudo apt-get install vim git wget tmux 我还会使用zsh和oh-my-zsh来替换bash sudo apt-get install zsh # 终端下打以下命令 wget --no-check-certif

  • mac下配置和访问阿里云服务器(Ubuntu系统)的图文教程

    1.购买云服务器(http://www.aliyun.com/?spm=5176.3047821.1.1.vHFBuw) 注册帐号,在产品页面选择合适的服务器,进入详细页面选择配置,购买. 购买完成后进入管理控制台--云虚拟主机.ECS云服务器查看服务器状态. 2.注册域名.阿里云也提供域名注册和购买的功能,输入域名查询后购买即可.(国内注册域名后需要网络备案,备案操作和流程在阿里云里面有教程,有点麻烦) 3.域名解析.进入管理控制台--云解析,选择已注册的域名,点击后面的"解析"按钮

  • 阿里云服务器搭建Php+Apache运行环境的详细过程

    1.apache 1.1 安装apache 使用yum命令安装 : yum -y install httpd 执行结果如下: 1.2 开启apache 开启apache: systemctl start httpd 开启启动apache: systemctl enable httpd 执行结果如下: 1.3 验证安装是否成功 在浏览器输入http://(服务器公网ip),如果出现以下页面说明安装成功: 1.4 验证是否能够正常访问 使用vim在/var/www/html下面编辑一个html文件:

  • 详解Nginx配置SSL证书实现Https访问

    背景 由于项目需求,安全起见,需要将之前的http接口访问变成https访问,所以需要配置SSL证书.项目的架构是这样的: 基本架构是硬负载(ReadWhere)+ 软负载(Nginx)+ Tomcat集群,现在的问题是SSl证书要配置在哪里,直接配置在硬负载上?还是分别配置在Nginx和Tomcat上?还是其他的配置方法呢? 首先在硬负载上配置放弃了,然后通过在网上查找资料,发现可以只在Nginx上配置证书,就是说Nginx接入使用Https,而Nginx与Tomcat之间使用Http进行衔接

  • nginx配置ssl证书实现https访问的示例

    一,环境说明 服务器系统:ubuntu16.04LTS 服务器IP地址:47.89.12.99 域名:bjubi.com 二,域名解析到服务器 在阿里云控制台-产品与服务-云解析DNS-找到需要解析的域名点"解析",进入解析页面后选择[添加解析]按钮会弹出如下页面: 主机记录这里选择@,记录值就是服务器ip地址,确认. 三,申请ca证书 在阿里云控制台-产品与服务-安全(云盾)-CA证书服务(数据安全),点击购买证书, 选择"免费版DV SSL",点击立即购买: 然

  • 在Nginx服务器上安装SSL证书完成HTTPS请求的步骤详解(springboot项目)

    目录 步骤1:下载证书到本地 步骤2:(可选)在Nginx独立服务器上安装证书 http本博客是在我完成了http重定向https配置之后来总结的,如有问题请大家见谅!如有问题请评论留言!!! 阿里云文档地址:https://help.aliyun.com/document_detail/98728.htm?spm=a2c4g.11186623.2.7.550a7845ysZdw5#section-liy-o8x-gug 步骤1:下载证书到本地 1.登录SSL证书控制台. 2.在概览页面,单击证

  • node链接mongodb数据库的方法详解【阿里云服务器环境ubuntu】

    本文实例讲述了node链接mongodb数据库的方法.分享给大家供大家参考,具体如下: 一.安装2.6版本以上的mongodb在云服务器上(百度就能查到安装方法,以及验证是否安装成功一般是mongodb –version): 二.因为mongodb的默认开启端口是27017,所以要在Ubuntu上开启这个端口: ufw allow 27017 ufw enable ufw reload ufw status //这是查看这个端口是否开启,iptables --list也可以查看 光在服务器开了端

随机推荐