我正在使用MPDF生成带图像的pdf。使用http://一切正常,但在将我的整个网站更改为https://后,我只会看到图像应该出现的红色十字架。
如果我将生成的文件视为html版本,那么图像都在那里,使用https://,但在生成的PDF中,它们只是不显示。
任何提示?
更新: 错误是因为CURL (" SSL证书问题:无法获得本地颁发者证书")
通过添加// on one change to one element
id 1 POST UPDATED
id 2 POST UPDATED
解决了问题
到mpdf.php
答案在这里找到: curl: (60) SSL certificate : unable to get local issuer certificate
答案 0 :(得分:2)
对于任何来自Google的人-现在都有更好的解决方案。 mPDF现在支持设置curlAllowUnsafeSslRequests。
import os
import sqlite3
from configparser import ConfigParser
CONFIG_PATH = os.path.join(os.path.dirname(__file__), 'config/config.ini')
def get_settings(config_path=CONFIG_PATH):
config = ConfigParser()
config.read(config_path)
return config
def db_connect():
config = get_settings()
con = sqlite3.connect(config.get('main', 'datasource'))
return con
这将为您正确设置CURL参数,而无需修改mPDF。 显然,仅在适当的情况下使用,因为这会禁用SSL的所有验证保护。
答案 1 :(得分:0)
要解决此问题,您需要从URL中删除协议,我已经创建了一个插件,请安装并激活。
以下是插件链接: - https://wordpress.org/plugins/vg-protocol-removed-not-secure-connection/
答案 2 :(得分:0)
如果您拥有根证书,则最好使用CURLOPT_CAINFO或CURLOPT_CAPATH提供它,而不是完全绕过验证。
很遗憾,mPDF设计得不是很好,所以你可以避免直接修改库代码。