window下为apache配置ssl证书
转载自 子非鱼 的博客稍作修改
第一步:依赖
配置Apache服务器支持https协议和SSL证书,最基本的要求是Apache包含openssl模块。还好apache/bin目录下有libeay32.dll、openssl.exe、ssleay32.dll,自带了ssl模块,若没有该模块,需自行下载单独的openssl。
第二步:启动模块
启动模块比较简单,打开apache的配置文件conf/httpd.conf,去掉ssl模块前面的#
LoadModule ssl_module modules/mod_ssl.so
...
Include conf/extra/httpd-ssl.conf
第三步:配置证书
如果你有证书了,那么会有malinlin.cn.crt malinlin.cn.key,两个文件,在conf下建立个ssl文件夹存放证书。将原先conf/extra/httpd-ssl.conf备份后,新建一个httpd-ssl.conf。以下是我为蛋总配置的:
Listen 443
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLPassPhraseDialog builtin
<VirtualHost *:443>
DocumentRoot "c:/wamp/www"
ServerName malinlin.cn:443
ServerAdmin admin@example.com
ErrorLog "C:/wamp/bin/apache/apache2.2.22/logs/ssl-error.log"
TransferLog "C:/wamp/bin/apache/apache2.2.22/logs/sll-access.log"
SSLEngine on
SSLCertificateFile "C:/wamp/bin/apache/apache2.2.22/conf/ssl/malinlin.cn.crt"
SSLCertificateKeyFile "C:/wamp/bin/apache/apache2.2.22/conf/ssl/malinlin.cn.key"
SSLCertificateChainFile "C:/wamp/bin/apache/apache2.2.22/conf/ssl/malinlin.cn.crt"
</VirtualHost>
如果想在原先httpd-sll.conf修改也行,记得将这三行注释掉。没有注释的话启动wamp会是失败的枯黄色。
#SSLSessionCache "dbm:D:/wamp/bin/apache/apache2.4.9/logs/ssl_scache"
#SSLSessionCache "shmcb:D:/wamp/bin/apache/apache2.4.9/logs/ssl_scache(512000)"
#SSLSessionCacheTimeout 300
测试
配置好后重启wamp,重启完毕后,浏览器就可以访问了。
额外
如果到这已经解决你的问题了,那就没必要往下看了,下面是介绍没有证书的情况下也能体验,我们强大的openssl也是可以生成证书的,之后访问https://localhost(哎,什么域名都是ok的啦)
1、使用DOS命令进入Apache bin目录
因为该目录才有libeay32.dll、openssl.exe、ssleay32.dll等文件。
2、设置openssl环境变量
使用DOS命令在bin目录下执行命令:set OPENSSL_CONF=..\conf\openssl.cnf,通过此命令设置openssl的环境变量,如果不执行此命令,后面的操作会报错。
set OPENSSL_CONF=..\conf\openssl.cnf
3、生成server.key
DOS下执行命令:openssl genrsa 4096 > server.key,执行了这个命令,会在bin目录下生成server.key。注释:这是使用128位的RSA算法生成的密钥,还可以使用其他的算法生成密钥,相关的用法可以使用搜索引擎搜索。4096是密钥的长度,这个值最好使用4096以上的值,必须是2的整数次方。
openssl genrsa 4096 > server.key
4、生成未签署的server.csr
DOS命令下执行:openssl req -new -key server.key > server.csr,这个命令使用生成的密钥文件 server.key生成证书请求文件server.csr,执行这一命令之后,后面还要输入很多参数。
openssl req -new -key server.key > server.csr
Country Name (2 letter code) [AU]:CN ISO国家代码(只支持两位字符)
State or Province Name (full name) [Some-State]:Hu Bei 所在省份
Locality Name (eg, city) []:Wu Han 所在城市
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Mark Company 公司名称
Organizational Unit Name (eg, section) []:IT 组织名称
Common Name (e.g. server FQDN or YOUR name) []:www.phpmarker.com 申请证书的域名
Email Address []:phpmarker@163.com 管理员邮箱
Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []: 交换密钥 可空
An optional company name []: 可空
5、签署服务器证书文件server.crt
DOS命令下执行:openssl req -x509 -days 365 -key server.key -in server.csr > server.crt,这个命令使用第三步和第四步生成的密钥和证书来生成证书server.crt,-days参数表示证书有效期,单位为天,x509表示生成的是X.509证书。
openssl req -x509 -days 365 -key server.key -in server.csr > server.crt
6、查看证书详细信息
DOS下执行命令:openssl x509 -noout -text -in server.crt,这个命令可以查看证书的详细信息
openssl x509 -noout -text -in server.crt
7、开始部署
执行上面所有的命令之后,在Apache的bin目录下生成了三个文件server.key、server.csr、server.crt。可以将其移动到专门放证书的文件夹。
修改httpd-ssl.conf,以下是我的配置:
Listen 443
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLPassPhraseDialog builtin
#SSLSessionCache "dbm:D:/wamp/bin/apache/apache2.4.9/logs/ssl_scache"
#SSLSessionCache "shmcb:D:/wamp/bin/apache/apache2.4.9/logs/ssl_scache(512000)"
#SSLSessionCacheTimeout 300
<VirtualHost _default_:443>
DocumentRoot "e:/kuaipan/code/win_www"
ServerName localhost:443
ServerAdmin admin@example.com
ErrorLog "D:/wamp/bin/apache/apache2.4.9/logs/ssl-error.log"
TransferLog "D:/wamp/bin/apache/apache2.4.9/logs/sll-access.log"
SSLEngine on
SSLCertificateFile "D:/wamp/bin/apache/apache2.4.9/conf/ssl/server.crt"
SSLCertificateKeyFile "D:/wamp/bin/apache/apache2.4.9/conf/ssl/server.key"
SSLCertificateChainFile "D:/wamp/bin/apache/apache2.4.9/conf/ssl/server.crt"
</VirtualHost>
8、重启Apache服务器
重启后浏览器访问https://localhost
可用,但是https是个叉,不像上面的图是绿色的。出现这种情况,因为我们自己制作的证书,不被浏览器所信赖。我们查看证书详细情况:

window下为apache配置ssl证书的更多相关文章
- windows下基于IIS配置ssl证书遇到的坑
前几天配置windows下基于IIS配置ssl证书 完全按照步骤执行 绑定https网址后,一直显示:无法访问此网站 检查了443端口,还有防火墙限制,没发现什么 足足困扰了我好几天 后来突然想到前不 ...
- 阿里云centos7.4下tomcat8.5配置ssl证书
环境 阿里云centos7.4 域名也是阿里申请的 jdk1.8 tomcat8.5 1.申请证书 登录到阿里云的域名管理,可以看到已经申请过得域名,我这里第一个已经配置了ssl,第二个未配置,点击更 ...
- 阿里云Ubuntu下tomcat8.5配置SSL证书
环境 阿里云ubuntu(18.04)服务器 阿里云申请的域名 Tomcat8.5.7 jdk1.8 免费型SSL证书 SSL证书申请 登录阿里云的官网,登录后在菜单中选择SSL证书(应用安全) 进入 ...
- Appserv(Apache) 配置ssl证书
一:打开httpd.conf文件,移除注释的行: Include conf/extra/httpd-ahssl.conf LoadModule ssl_module modules/mod_ssl.s ...
- windows下基于IIS配置ssl证书
我这边用的是阿里云的免费证书,下面展示一下操作步骤. 首先登陆阿里云,搜索ssl证书进入ssl证书控制台.点击购买 然后选择免费版,配置如下: 选择立即购买,购买成功后回到ssl控制台即可查看证书.然 ...
- PHPWAMP集成环境配置ssl证书
和apache配置ssl证书流程一样, LoadModule socache_shmcb_module modules/mod_socache_shmcb.so LoadModule ssl_modu ...
- phpstudy配置SSL证书的步骤(Apache环境)以及一些注意事项
准备工具(我自己的): 腾讯云的域名和云主机,还有SSL证书,以及phpstudy 首先要下载自己的SSL证书,会得到一个压缩包,解压以后会得到四个文件夹和一个csr文件, Apache文件夹内三个文 ...
- ubuntu中apache的ssl证书配置及url重写
一.https原理 借用网上的图(图片来源: https://www.cnblogs.com/xiohao/p/9054355.html ),用到了对称加密和非对称加密. 二.ubuntu的ap ...
- nginx下如何配置 ssl证书?腾讯云ssl证书为例!
nginx下如何配置 ssl证书?腾讯云ssl证书为例! 目前为止,https已经成为一种趋势,想要开启https就需要ssl证书. 首先,为域名注册ssl证书. 腾讯云注册地址:https://cl ...
随机推荐
- UESTC 882 冬马党 --状压DP
定义:dp[i][j]为状态为j时,第i行符合条件的状态数 转移方程:dp[i][j] += dp[i-1][t] //t为上一行状态,与当前行不冲突. 从第一行开始向下枚举,每次枚举当前行的状态 ...
- HDU 1850 Being a Good Boy in Spring Festival
此题先考虑第一种,5 7 9的情况,先手如果想赢,则必定要把异或值变为0,因为随便取,所以此处的异或指的是对堆中的石子数进行异或,而非异或其SG函数. 首先7^9=14,因为要异或为0,则5要变成14 ...
- [转] Linux下防火墙iptables用法规则详及其防火墙配置
from: http://www.cnblogs.com/yi-meng/p/3213925.html 备注: 排版还不错,建议看以上的链接. iptables规则 规则--顾名思义就是规矩和原则,和 ...
- sqlzoo.net刷题2
Find the largest country (by area) in each continent, show the continent, thename and the area: 找到每个 ...
- sublime配置全攻略
大家好,今天给大家分享一款编辑器:sublime text2 我用过很多编辑器, EditPlus.EmEditor.Notepad++.Notepad2.UltraEdit.Editra.V ...
- 给H5页面添加百分比的进度条,精确度高
进度条样式地址:http://sandbox.runjs.cn/show/6vxbxjrf SVG圆环样式地址:http://sandbox.runjs.cn/show/3ho1qpe9 原理:由于H ...
- <global-results>
全局result(global-results)有很多时候一个<result>可供很多<action>使用,这时可以使用<global-results>标签来定义全 ...
- 使用DataAnnotations实现数据验证
https://msdn.microsoft.com/zh-cn/library/system.componentmodel.dataannotations.aspx http://www.cnblo ...
- [IIS][ASP.NET]“拒绝访问临时目录”的解决方法
开始以为是“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”文件夹权限的问题,但怎么设置这个权限也解决不 ...
- Silverlight OOB程序签名问题
浏览器外部署Silverlight时,为了让部署到本地的Silverlight应用程序保持最新,通常需要在应用程序中添加更新检查的功能.具体实现可参见这儿. 除了文中提到的“应用程序中使用了用户尚未安 ...