阿里云服务器apache配置SSL证书成功开启Https的教程
文章主要介绍了阿里云服务器apache配置SSL证书成功开启Https(记录趟过的各种坑),需要的朋友可以参考下环境:阿里云云服务器 Windows Server 2008 标准版 SP2 中文版(趁1212优...
文章主要介绍了阿里云服务器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
#这里的路径设置你的网站根目录
DocumentRoot "C:\phpStudy\PHPTutorial\WWW"
#这里xxxxx.com替换成你的域名
ServerName www.xxxxx.com
#这里xxxxx.com替换成你的域名
ServerAlias xxxxx.com
#这里的路径设置你的网站根目录
Options FollowSymLinks ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
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"
重启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
RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R=301,L]
保存退出
检查服务器是否已经关闭了windows自带的IIS服务器(因为可能会占用apache的80端口),检查是否关闭了系统防火墙,检查是否有其他程序占用了80或者443端口。确认都已经关闭后进行下一步 (这里给大家贴一个端口扫描工具用于检查:http://tool.chinaz.com/port/)
重启apache
启动浏览器检查是否可以访问localhost 及你的域名,并且域名头部标志为https。如果不能正常访问,请根据以上步骤重新检查。
SSL配置成功,能够使用https访问你的域名了!
-
在Win2008 r2服务器英文版IIS7.5上Https、SSL的配置方法
在win2008 r2 英文版 IIS7.5上配置Https,SSL的方法,在非服务器、而且没有证书颁发机构(Certificate Authority简称CA)的开发环境中,配置HTTPS,SSL用于测试或学习 。...
-
Windows服务器SSL证书创建、安装及配置方法教程
文章主要介绍了windows服务器ssl证书创建、安装及配置方法,用IIS发布https网站,SSL的安全服务配置步骤:...
-
Windows服务器操作系统安全配置检查和加固方法
本文档旨在指导系统管理人员或安全检查人员进行Windows操作系统的安全合规性检查和配置,需要的朋友可以参考下。1. 账户管理和认证授权1.1 账户默认账户安全禁用Guest账户。...
-
Windows服务器启用/禁用SMBv1、SMBv2和SMBv3的方法教程
文章主要介绍了如何在 Windows 和 Windows Server 中启用/禁用 SMBv1、SMBv2 和 SMBv3的方法,需要的朋友可以参考下。如何在 SMB 客户端和服务器组件上启用/禁用服务器消息...
-
windows server 2008 r2 DNS服务器配置教程图文详解
DNS服务器的作用就是帮助用户使用简单好记的域名来访问网络上的主机和网络服务。这篇文章主要介绍了windows server 2008 r2 DNS服务器配置图文教程,需要的朋友可以参考下。...
-
Windows Server 2019服务器系统安装教程图文详解
indows Server 2019是由微软(Microsoft)官方推出的最新版服务器版操作系统,该系统基于Win Server 2016开发而来,后者是微软迄今为止普及速度最快的服务器系统。...
-
如何使用linux的服务器需要进行的配置
这篇文章主要内容就是对如何使用linux的服务器需要进行的配置。根据小编我努力的学习成果,我们现在的进程已经到了对linux服务器的学习,但是当你想要学习linux服务器时...
-
DNS服务器保护方法:几点保护DNS服务器的有效方法小结
完成DNS查询的DNS服务器。使用DNS转发器的主要目的是减轻DNS处理的压力,本文收集总结了几点保护DNS服务器的有效方法。需要的朋友的可以参考下。...
-
windows2003服务器搭建DNS服务器配置图解教程
DNS简单地说,就是Domain Name System(域名系统)。在一个以TCP/IP协议为主的网络环境中,DNS是一个非常重要而且常用的系统。其主要的功能就是将我们容易记忆的网址域名(Domain Name)与不容易记忆的IP地址作自动解析互换...
-
RHE5服务器中搭建DNS服务器的方法步骤说明[图文]
本文介绍 RHE5中搭建DNS服务器的方法,主机的一个列表文件—包含(本地网络中)已知主机的一个列表如果系统的IP不是动态生成,就可以使用它,对于简单的主机名解析(点分表示法供大家学习参考...