如何在fsockopen中禁用ssl检查?(PHP 5.6)


How to disable ssl check in fsockopen ? (PHP 5.6)

PHP升级到5.6.5,fsockopen:

fsockopen('ssl://74.201.154.90', '465', $errno, $error, $this->timeout);

警告:fsockopen(): Peer certificate CN= *.zoho.com' did not match expected CN= 74.201.154.90' in…

警告:fsockopen(): Failed to enable crypto in…

警告:fsockopen():无法连接到ssl://74.201.154.90:465

fsockopen("ssl://74.201.154.90","465",errno美元,美元错误,$ this ->超时),

尝试用smtp.zoho.com代替74.201.154.90。应该可以了

我要提一下,这个问题的答案有两点:这个ssl错误的原因是什么,你应该做些什么来避免它?正确的答案是:原因是证书和主机名不匹配,你应该尽量避免设置IP地址而不是主机名,以避免这样的错误(并避免MiTM攻击等),这是一个很好的做法;我应该在PHP文件中指定什么来禁用证书验证?我知道这是一个糟糕的做法,但我想知道如何确切地禁用此验证。