微信小程序 windows2012R2 phpStudy ssl证书 https访问各种填坑问题 !!!
写这篇文章的主要目的是帮助自己记忆填坑,同时希望能帮助到大家!
首先,微信小程序访问后台数据,是不会认http访问的,只接受https访问。先给大家看看报错的问题!手机拍照的,服务器里面没有截图软件,希望大家原谅!只要你按照我的步骤来的话,一切都会迎刃而解:
报错:如下图
图一:
图二:
图三:
那么现在开始说解决办法:
1、首先去申请ssl证书:(我的是阿里云windows服务器,我申请的是个人免费一年的)
下一步就选择免费的:藏的比较深,慢慢找!(重点是:选择“1个域名”)
接下来就直接填写你的个人信息和上传相关信息:这里不方便展示给大家,下面给大家看填写完信息之后的截图:
这样就算是申请成功啦!
2、添加安全组,也就是我们需要的端口配置:
3、下载安装ssl证书:这里如果你按照阿里云给的文档配置,会出错的!!!!!apache会一直启动不了!!!
前2步你完成了,那么第三步你就参照我的来配置:文件不会变的
=》http-ssl.conf:这个文件,找到Listen 443,之后的内容全部删除,替换上我下面给出的代码!!!!!
Listen 443
<VirtualHost *:443>
DocumentRoot "C:\phpStudy\PHPTutorial\WWW\wechat\public" //这里填你的项目路径
ServerName andy.midengr.top:443 //你的域名,记得加上端口443!!!!!
ServerAlias midengr.top
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL
SSLCertificateFile "C:\phpStudy\PHPTutorial\Apache\cert\public.pem" //证书公钥
SSLCertificateKeyFile "C:\phpStudy\PHPTutorial\Apache\cert\214861037860779.key" //证书私钥
SSLCertificateChainFile "C:\phpStudy\PHPTutorial\Apache\cert\chain.pem" //证书链配置
</VirtualHost>
备注:记得检查你的证书路径,千万别出错,否则apache是启动不了的!!!!
4、配置站点:这里就不截图了,不会的 请点开此连接 ,我在这篇文章又介绍!
主要的是:要把php扩展里面的“php_openssl”打开!!!
5、修改hosts文件:
6、重启phpStudy,如果apache启动不了,请检查第三步、第四步!
7、apache成功启动,访问 https://localhost 或访问 https://andy.midengr.top =>报刚开始的哪些错误!!!!
接下来我们就开始解决这个错误了!!!!
刚开始我也没搞明白!!!!
解决步骤一:
开始菜单=》regedit =》HKEY_LOCAL_MACHINE =》SYSTEM =》CurrentControlSet =》Control =》SecurityProviders =》 SCHANNEL =》Protocols
注册表里面没有怎么办呢?
解决步骤二:
新建一个后缀名为" .reg "的文件(如下图),并添加如下代码 =》双击运行 ,这时候注册表就添加上了上图所示红框内的内容了!!!!!
代码如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Client]
"Enabled"=dword:00000000
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Server]
"Enabled"=dword:00000000
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0\Client]
"Enabled"=dword:00000000
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0\Server]
"Enabled"=dword:00000000
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client]
"DisabledByDefault"=dword:00000001
"Enabled"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server]
"Enabled"=dword:00000000
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client]
"Enabled"=dword:00000000
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server]
"Enabled"=dword:00000000
"DisabledByDefault"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client]
"Enabled"=dword:00000001
"DisabledByDefault"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server]
"Enabled"=dword:00000001
"DisabledByDefault"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"Enabled"=dword:00000001
"DisabledByDefault"=dword:00000000
最后:重启phpStudy,然后访问:https://andy.midengr.top 或 http://andy.midengr.top,是不是https和http都可以访问了?
8、接下来我们看看小程序是不是真的能访问后台接口数据了哈!!!!
首先你得配置好微信小程序的服务器域名:如下图
9、在微信开发工具上打开你的小程序项目,测试!(如下图)
是不是读取到了!!!!!!!!
谢谢大家,如果本文能帮助到你,请关注我的更多文章哟!如果你要转载,请在博文下方标注出处,谢谢!