Dompdf在生产服务器上找不到图像。

3

经过几个小时的搜索,我仍然无法解决这个问题。我遇到了一个在dompdf库生成的PDF文件中显示图像的问题。

我有一个编辑器tinyMCE,用户可以上传图片,编辑页面,并通过按下按钮以PDF格式查看预览。

这里有一件重要的事情:我在tinyMCE的配置中使用了'convert_urls:true',将图像src="https://mysite.com/public/images/image_name.png"转换为必须显示在PDF库中。

我设置了所需的dompdf配置:

  • def(“DOMPDF_ENABLE_REMOTE”,true);

在这里,我发现需要更改附加的CSS和dompdf一起使用才能正常显示。

img { display:block }

仍然是徒劳无功。

注意:本地环境一切正常。但在测试服务器上,我收到一个消息框,在里面带有一个十字,显示“找不到图像”的信息和图片路径。当我点击该路径时,该图片已经存在于我的服务器上。我想知道为什么dompdf会给我这个消息?


你确定你能够在没有任何身份验证的情况下访问这个图像吗? - MatTheCat
1
此外,请确保您的服务器允许在文件打开过程中使用URL(allow_url_fopen = true)。如果您正在使用v0.6.x,则可以检查dompdf / www / setup.php以查看安装是否存在任何问题。有关更完整的相关设置列表,请参见http://stackoverflow.com/a/14328719/264628。 - BrianS
我在这里回答了问题,解决了我的问题以及其他人的问题!! - Irfan Ahmed
DOMPDF 似乎无法处理 https 协议下的远程图片。 - greener
2个回答

9

我曾经遇到过同样的问题。当Dompdf不接受以http格式的url时,解决方法非常简单。尝试使用完整的文档根目录。

与其使用 https://example.com/public/images/image_name.png, 不如使用 /var/www/mysite/public/images/image_name.png


澄清一下,Dompdf 可以很好地处理基于 Web 的图像和 CSS 引用。您只需要确保您的系统符合最低要求即可。 - BrianS

0

在外部 CSS 和图片中使用绝对路径而不是实时路径!这对我也起作用了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接