所以我选择使用Cloudflare的共享SSL证书和CDN,现在我注册的网站在浏览器中显示了此证书:
“已发布”域名不是我的域名,这会导致问题:
我的程序的https post API认为我的网站没有有效证书
但是,当我使用Chrome浏览器打开我的网站时,会显示安全图标:
浏览器似乎认为Cloudflare共享证书没问题,
,而“发布到”域名显然不是我的域名
所以问题是:
为什么浏览器信任共享SSL证书时“发布到”与我的域不匹配,而来自C#程序的WebRequest不信任?
答案 0 :(得分:2)
原来有一个"主题替代名称"证书详细信息中的字段,允许浏览器信任证书与非"颁发给"域名,非常感谢@SLaks。
它不支持我的C#api访问的原因是Unity不支持HTTPS的ECDH(Elliptic-curve Diffie-Hellman),而Cloudflare只支持ECDH。
所以,通过Cloudflare到我的服务器的HTTPS api适用于Chrome,但不适用于Unity。我四处搜索,发现它对某些版本的Monodevelop阵容和Xiamarin也不起作用。 Bug