我使用的是Windows10开发机器上Python3.6上的Django52.3(撰写本文时可用的最新版本)和WeasyPrint 2.2LTS;一切正常。
但是,当我尝试在Linux机器上呈现PDF (相同的WeasyPrint/Django/Python版本)时,我尝试从URI加载的所有项目都不会显示,包括图像和CSS。当不使用WeasyPrint时,图像/CSS被正确加载。我的图片/CSS可以在https://myhost.tld/some.css上找到,myhost已经签署了证书。
当使用内联CSS时,CSS呈现得很好。
我尝试通过以下方式启用WeasyPrint日志记录:
import logging
logger = logging.getLogger('weasyprint')
logger.addHandler(logging.FileHandler('/tmp/weasyprint.log'))我看到了以下输出:
Failed to load stylesheet at https://myhost.tld/assets/css/pdf.css : URLError: <urlopen error [Errno -3] Temporary failure in name resolution>这怎么可能呢?我的DNS系统已经为myhost.tld正确设置好了。
发布于 2021-03-09 03:52:05
确保myhost.tld是/etc/hosts文件的一部分:
127.0.0.1 localhost
127.0.1.1 myhost
127.0.2.1 myhost.tld重新启动正确的服务,文件将加载。
https://stackoverflow.com/questions/66536242
复制相似问题