使用https

时间:2017-11-09 17:46:48

标签: symfony pdf twig

我正在使用带有SpraedPDFGeneratorBundle的symfony框架来生成PDF。它完美无缺,直到我在使用https的服务器上使用它。 我正在使用twig-template并使用pdfGenerator进行渲染:

$html = $this->renderView("documents/pdf/document.html.twig", array([..]));
$pdfGenerator = $this->get('spraed.pdf.generator');
$pdf = $pdfGenerator->generatePDF($html);

图像被复制到tmp目录,模板用绝对路径加载它:

<img src="{{ app.request.scheme ~'://' ~ app.request.httpHost ~ asset(logo) }}" height="100" />

在我使用https服务器之前一直有效。图像不会显示在pdf上(但如果输出html,则会显示图像)。

如果我从https-redirect(在apache-site-config中)中排除tmp-dir(存储图像的位置):

RedirectMatch 301 ^/((?!tmp).*)$ https://mypage.com/$1

并将图像的路径更改为http://:

<img src="{{ 'http://' ~ app.request.httpHost ~ asset(logo) }}" height="100" />

它有效。

所以我认为问题是pdfgenerator无法从https加载图片。

我做错了什么还是错误?

编辑:

简短形式: 如果图像源以http开头,则可以加载图像。如果图像源以https开头,则无法加载图像。如果我回显pdf的html,则会显示图像,因此绝对URI是正确的。

0 个答案:

没有答案
相关问题