我一直在使用TCPDF。 在我的本地计算机上,TCPDF可以正常工作,但是会在实际服务器中引发错误。错误消息如下。
消息:getimagesize():SSL操作失败,代码为1。OpenSSL错误消息:error:1416F086:SSL例程:tls_process_server_certificate:证书验证失败
消息:getimagesize():无法启用加密
getimagesize(http:/test.com/images/sample.jpg):无法打开流:操作失败
如果我理解正确,则该应用程序无法验证服务器的SSL证书。
因此,在this example之后,我按照以下方式获取签名。
$pdf = new TCPDF();
$certificate = '/blahblah/certs/certificate.crt';
$pdf->setSignature($certificate, $certificate, 'pdfgen', '', 2, []);
仍然,我看到了相同的错误。
TCPDF抛出此"SSL operation failed with code 1"
错误时,这是什么意思?
任何帮助将不胜感激。
答案 0 :(得分:0)
我在使用库html2pdf
时遇到了同样的问题,该问题需要通过PHP函数getsizeimage()
获取图像大小,并且我的图像URL是https
,因此我通过在php.ini
提交SSL证书。
[openssl]
openssl.cafile="/etc/nginx/tls/yourCert.crt"
答案 1 :(得分:0)
或者您可以在本地尝试HTTP,然后在实时服务器上更改为HTTPS
答案 2 :(得分:0)
这个问题需要我几个小时!我有一个 ngnix 服务器。我唯一要做的就是将“mykey.ca”文件的内容粘贴到“mykey.crt”文件的末尾,将其另存为新文件“newBothKey.crt”并将该文件设置在“/etc/ nginx/站点可用”
listen 443 ssl;
ssl on;
ssl_certificate /etc/nginx/.ssl/sitename/newBothKey.crt;
ssl_certificate_key /etc/nginx/.ssl/sitename/mykey.key;
ssl_protocols TLSv1.2;
不要忘记重启nginx:
sudo systmctl restart nginix