最近两天一直在整ssl证书,所以外网访问博客是时好时坏。给大家分享一下我这两天的掉坑之旅。

配置ssl之前基本描述

基本环境
windows2012服务器
wampserver集成环境
apache 2.4.27
php,mysql(这两不细说了)
同时博客是使用node搭建的,这样在访问二级域名的时候默认先走apache服务而走不到node服务。
例如我的主域名是fwhf.xyz,二级域名是love.fwhf.xyz,访问时都是80端口,优先走apache,故而会出现访问不到node项目,这是便需要服务器代理

需要在httpd-vhosts.conf中添加如下配置

代理二级域名下的node项目
<VirtualHost *:80>
ServerName love.fwhf.xyz
ServerAlias love.fwhf.xyz
ProxyRequests off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
<Location />
ProxyPass http://localhost:111/
ProxyPassReverse http://localhost:111/
</Location>
</VirtualHost>代理二级域名下的php项目
<VirtualHost *:80>ServerName www.fwhf.xyzServerAlias www.fwhf.xyzDocumentRoot "C:/h5fwhf"<Directory "C:/h5fwhf">Options +Indexes +Includes +FollowSymLinks +MultiViewsAllowOverride All#  Require localRequire all granted</Directory>
</VirtualHost>

上面的代码有几个项目复制几个就ok。

在最近突然心血来潮突然想配置https请求,然后就此一路黑了两天
首先在阿里上申请免费ssl证书,然后查遍百度,看遍博客,问遍朋友,改尽apache配置总结出了如下配置

在httpd.conf中开启
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so (要与httpd-ssl.conf中相对应)
LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf httpd-ssl.conf中新添加如下配置 SSLProtocol all -SSLv2 -SSLv3(注释掉其他的)
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM(注释掉其他的)<VirtualHost love.fwhf.xyz:443>
DocumentRoot "C:/wamp64/bin/apache/apache2.4.27/htdocs"
ServerName love.fwhf.xyz:443
ErrorLog "C:/wamp64/bin/apache/apache2.4.27/logs/error.log"
TransferLog "C:/wamp64/bin/apache/apache2.4.27/logs/access.log" SSLEngine on
SSLCertificateFile "C:/wamp64/bin/apache/apache2.4.27/cert/public1.crt"
SSLCertificateKeyFile "C:/wamp64/bin/apache/apache2.4.27/cert/love1.key"
SSLCACertificateFile "C:/wamp64/bin/apache/apache2.4.27/cert/chain1.crt" <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars
</FilesMatch>
<Directory "C:/wamp64/bin/apache/apache2.4.27/htdocs"> #SSLOptions +StdEnvVars Options FollowSymLinks AllowOverride All Order allow,deny Allow from all
</Directory>
BrowserMatch "MSIE [2-5]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0
CustomLog "C:/wamp64/bin/apache/apache2.4.27/logs/ssl_request.log" \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

上面的路径切记切记一定要写对,在这个问题差点卡死,所以干脆直接上绝对路径(不然你的apache很可能会启动失败)
SSLCertificateFile证书公钥
SSLCertificateKeyFile证书私钥
SSLCACertificateFile
嗯,就这么一点内容,然后通过https://url访问此站点显示此网站无法提供安全连接,一度认为是不是我的域名来自腾讯云,解析在阿里云的原因,所以我又腾讯云也申请了一个安全证书(另外的一个二级域名),继续按照如上配置依然出现相同结果,唯有???可以表达我内心的想法

最后终于有一位大佬指点迷津,让我尝试用node试验是否可以成功。

const httpsOption = {key : fs.readFileSync("./cert/xxx.key"),cert: fs.readFileSync("./cert/xxx.pem")
}
// Create service
app.get("/",function(req,res){res.end('111')
})
var httpsServer = https.createServer(httpsOption, app);
var httpServer = http.createServer(app);
httpsServer.listen(443,function(){console.log('success443');
});
httpServer.listen(1314,function(){console.log('success1314');
});

结果还真的跑通了,,,就这样跑通了???真的有一句卧槽被我压在了心理。
好吧既然还可以玩那就这样玩吧。http继续照旧通过apache跑,https直接访问,也刚好满足我最初想要的既可以http请求,也可以https请求。
至于apache配置ssl目前是真的没有任何可以想象的想法。。。

后期补充(2019/3/23),刚了解到原来windows server用的是IIS证书,而非apapche证书

实现https请求之旅相关推荐

  1. Charles抓取https请求

    最近公司将Windows产品的http请求,替换成https请求了,当https请求超过5次失败,就自动切换回http请求.测试时使用Charles抓包测试. 一.http抓包 http抓包比较简单, ...

  2. iOS使用自签名证书实现HTTPS请求

    原文链接:http://www.jianshu.com/p/e6a26ecd84aa 由于苹果规定2017年1月1日以后,所有APP都要使用HTTPS进行网络请求,否则无法上架,因此研究了一下在iOS ...

  3. iOS 用自签名证书实现 HTTPS 请求的原理实例讲解

    在16年的WWDC中,Apple已表示将从2017年1月1日起,所有新提交的App必须强制性应用HTTPS协议来进行网络请求.默认情况下非HTTPS的网络访问是禁止的并且不能再通过简单粗暴的向Info ...

  4. java实现https请求

    参考: https://www.cnblogs.com/chinway/p/5802541.html java 实现https请求 JSSE是一个SSL和TLS的纯Java实现,通过JSSE可以很容易 ...

  5. 【Fiddler学习】Fiddler抓包HTTPS请求和手机抓包

    一.安装Fiddler 百度搜索:Fiddler抓包工具,然后安装即可. 然后打开Fiddler工具,打开浏览器随意输入任何网址,就可以在Fiddler看到抓包信息. 但是:默认情况下,Fiddler ...

  6. 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求

    这个需求来自于我最近练手的一个项目,在项目中我需要将一些自己发表的和收藏整理的网文集中到一个地方存放,如果全部采用手工操作工作量大而且繁琐,因此周公决定利用C#来实现.在很多地方都需要验证用户身份才可 ...

  7. iOS 10.3下使用Fiddler抓取HTTPS请求

    最近使用Fiddler抓取手机上的HTTPS请求时,遇到一个问题.设置完之后,访问HTTPS的页面,却得到一个错误 网络出错,轻触屏幕重新加载:-1202 (如下图所示) 我印象中,之前都好好的,怎么 ...

  8. httpsrequest java_java 发送http和https请求的实例

    HTTP请求: 如果需要Json格式的自己转下,度娘上N种姿势- //处理http请求 requestUrl为请求地址 requestMethod请求方式,值为"GET"或&quo ...

  9. Fiddler抓包1-抓firefox上https请求

    前言 fiddler是一个很好的抓包工具,默认是抓http请求的,对于pc上的https请求,会提示网页不安全,这时候需要在浏览器上安装证书. 一.网页不安全 1.用fiddler抓包时候,打开百度网 ...

最新文章

  1. 划分vlan,制作trunk口。使同一vlan能互相通讯
  2. oracle ebs 多组织屏蔽的研究
  3. java 导出excel二维表,如何轻松将EXCEL二维统计表转为数据清单?
  4. 浅谈Web开发中的6种技术
  5. WHU 1470 Join in tasks 水题
  6. hiho图的联通性(自留)
  7. How to upload windows Sysprep Files to VMware vCenter Server Appliance 6.5(vC
  8. PartyUs 待添加内容(不定期更新)
  9. javascript div 弹出可拖动窗口
  10. ICE专题:编译环境构建
  11. asp.net 安全---File Sytem 安全
  12. php json对象转为字符串,JSON对象转化为字符串(附上代码详细解答)
  13. Centos虚拟机桥接模式无法连接外网的解决
  14. 安师大计算机专业排名多少,安师大的计算机专业怎么样
  15. 如何申请免费163邮箱?如何申请163邮箱账号?
  16. LSM303DLH六轴角度传感器驱动
  17. iscroll.js
  18. 【SVM之菜鸟实现】—5步SVM
  19. 精力管理-健康生活 高效工作
  20. 如何使用FME在Revit中导出IFC

热门文章

  1. 有了TeamViewer,在家工作不是难事
  2. l05173芯片针脚图_芯片引脚定义
  3. C#获取动态key的json对象的值
  4. 关于@Transactional的使用
  5. 一年大约有3.1536*107s。编写一个程序,要求 输入你的年龄,然后显示该年龄等于多少秒。
  6. 【手机刷机】360 n4s降级039 root刷机(卡刷、线刷等)
  7. 什么是第一,第二,第三范式
  8. 什么是Spark、Spark特点、Spark Streaming和Storm的区别
  9. html大作业展示个人风采,个人风采展示自我介绍精选模板
  10. “21天好习惯“ 第十九期 — 19之黑马面面移动端布局(暂时完结)