KnpSnappyBundle 和 Symfony 3.4:图像和/或 css 导致超时

2024-03-30

我已经在现有的 Symfony 3.4 项目上安装了 KnpSnappyBundle。我已经用 HTML 树枝测试了 PDF 生成器,仅包含文本,没有图像,没有 css,没有 js:它工作正常。

然后我使用绝对 URL 添加(到树枝)图像和 Bootstrap.Css 文件(我正在本地主机上工作):PDF 生成器显示一个丑陋的错误:

The process "wkhtmltopdf --lowquality '/tmp/knp_snappy5aeb39ad71e767.56551505.html' '/tmp/knp_snappy5aeb39ad71ebf0.62787578.pdf'" exceeded the timeout of 60 seconds.

捆绑包出了什么问题?我使用的是带有 8Gb RAM 的 i7 笔记本电脑(ubuntu 16.04),我不认为这是机器配置的问题。

UPDATE:我已经从命令行测试了 wkhtmltopdf ,它确实转换了我的树枝:

wkhtmltopdf http://127.0.0.1:8000/eshop/admin/order/print/2 out.pdf

所以 wkhtmltopdf 在本地主机上的绝对 URL 没有问题!

Thanks


在这里找到了解决方案:https://github.com/KnpLabs/KnpSnappyBundle/issues/82 https://github.com/KnpLabs/KnpSnappyBundle/issues/82

当从包中调用时,wk 似乎无法使用绝对 URL 来查找资源(因此在 shell 中执行时),您必须指定绝对路径。创建一个树枝全局变量:

twig:
 globals:
  pathToWeb: "%kernel.root_dir%/../web"

然后在树枝中使用新变量而不是 asset() :

<link ... href="{{ pathToWeb }}/css/bootstrap.min.css"/>
<img ... src="{{ pathToWeb }}/images/logo.png"/>

奇迹般有效

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

KnpSnappyBundle 和 Symfony 3.4:图像和/或 css 导致超时 的相关文章

  • 让第 3 方在无需访问完整项目/源代码的情况下进行 Symfony 设计

    我正在开发 Symfony 2 WebApp WebApp已经上线大约两年了 现在我想更新一下设计 这项工作应该外包给第三方 当然 设计师需要访问所有样式 sass 文件 和模板 twig 文件 才能进行设计 我怎样才能做到这一点 而又不让
  • Symfony 2 登录后重定向

    在 Symfony 2 中 您可以设置注销目标 以便注销后您将被重定向到 main 但是 登录后您将被重定向到 有没有办法为 成功 登录设置目标 firewalls dev pattern profiler wdt css images j
  • 如何使用PDFBOX确定文本的人工粗体样式、人工斜体样式和人工轮廓样式

    我正在使用 PDFBox 来验证 pdf 文档 检查 PDF 中存在的以下类型的文本有一定要求 人工粗体样式文本 人造斜体样式文本 人工轮廓样式文本 我在 PDFBOX api 列表中进行了搜索 但找不到此类 api 任何人都可以帮助我并告
  • 将 Highcharts 导出为 PDF(使用 javascript 和本地服务器 - 无互联网连接)

    我在我的应用程序中使用 Highcharts 没有任何互联网连接 我的 html 页面上有多个图表 我想生成一个包含该页面中所有图表的 PDF 报告 我怎样才能做到这一点而不将数据发送到互联网上的任何服务器 我将感谢您提供的任何帮助或任何示
  • Select2 基本示例不起作用

    我想得到select2使用 symfony2 脚本的库 我正在尝试实现提供的基本示例https select2 github io examples html https select2 github io examples html pa
  • symfony2以管理员用户身份访问私有文件

    在我的 Symfony2 3 项目中 我有一个前端网站和一个后端 后端通过 security yml 文件进行安全保护 只有 role admin 用户可以访问后端 我现在想要的是只有管理员用户可以下载 pdf 文件存储在资产中 有没有办法
  • .NET Web 服务 (asmx) 超时问题

    我正在连接到供应商提供的 Web ASMX 服务并通过线路发送一组数据 当您向项目添加服务引用时 我的第一次尝试遇到了 Visual Studio 默认在 app config 文件中引发的 1 分钟超时 我把它增加到 10 分钟 又是一次
  • Django FileResponse PDF - 前端的 pdf 字体更改 - (Django DRF 和 React.js)

    我在我的应用程序中使用 Django Rest Framework 和 React js 作为应用程序的一部分 我在后端生成 pdf 然后将它们发送到前端进行显示 这个功能是有效的 如果不是因为我的前端 pdf 中的字体看起来不同的话 在我
  • 如何通过 SyliusResourceBundle 使用 Sylius 创建新模型

    我找到并成功使用了有关如何覆盖 Sylius 中现有模型的文档 但我无法利用 SyliusResourceBundle 创建一个全新的模型 我猜如果你已经了解 Symfony2 的话这很容易吗 我仍在学习 所以这就是我所拥有的 我缺少什么
  • 用于电子邮件和文件日志记录的 Symfony2 Monolog 设置

    我想设置 Symfony2 向我发送电子邮件critical错误 但只需记录error级别错误 下面的设置可以做到这一点吗 monolog handlers main type fingers crossed action level er
  • Mac OS X 上的超时命令?

    Mac OSx 上的超时命令有替代方法吗 基本要求是我能够在指定的时间内运行命令 e g timeout 10 ping google com 该程序在 Linux 上运行 ping 10 秒 您可以使用 brew install core
  • 如何翻译 Sonata Admin Bundle 中的标签

    我正在使用 Symfony 2 3 和 Sonata Admin Bundle 我知道我可以用这种方式翻译标签 gt add shortDescription null array label gt shortDescriptionTran
  • 如何在 R 和 RStudio 中构建 pdf 小插图

    我是编写 R 包的新手 我正在尝试学习如何为我的包裹制作小插图 我创建了一个小插图文件夹 其中包含文件 getting started Rmd title WaterML Tutorial author Jiri Kadlec date r
  • MSTest:如何增加测试时间

    我有一个测试需要运行超过 1 分钟 VS2008 MSTest 测试是从 VisualStudio 启动的 const int TestTimeout 1 TestMethod Timeout 10 60 1000 10 minutes p
  • Symfony 2 Dom Crawler:如何在 Element 中仅获取 text()

    使用 Dom Crawler 仅获取文本 无标签 html EOT lt lt lt div class coucu Get Description span Coucu span div EOT crawler new Crawler h
  • 粘合(拼版)PDF 文档

    我有几个 A4 PDF 文档 我想将它们 二合一 粘合 在一起成为 A3 格式的 PDF 文档 所以我将从 2PDFs 中得到A4单面 PDFA3 我发现了出色的实用性PDF工具包 http www pdfhacks com pdftk 和
  • Doctrine ORM 按注释对象字段排序

    所以它很简单 我在某个实体中有以下代码 var ServiceOffer ORM OneToMany targetEntity ServiceOffer mappedBy serviceProvider ORM OrderBy servic
  • 如何使用来自数据库的值来定义 Twig 模板的全局变量?

    我想为 twig 定义一个全局变量 可以从任何模板访问它 我可以在 symfony 中创建一个全局变量config packages twig yaml 但我需要它是从数据库获取的值 在 twig 的文档中 它说使用此代码 twig new
  • 从 Gmail 获取 pdf 附件作为文本

    我在网络和 Stack Overflow 上搜索但没有找到解决方案 我尝试做的事情如下 我通过邮件收到某些附件 我希望将其作为 纯 文本进行进一步处理 我的脚本如下所示 function MyFunction var threads Gma
  • Linux:命令行实用程序将 RTF 转换为 PDF?

    有什么建议可以将 RTF 转换为 PDF 吗 我需要从 LAMP 应用程序执行此操作 因此像 GhostScript 这样的命令行实用程序将是理想的选择 或者 您可以使用 libreoffice 来完成此任务 libreoffice hea

随机推荐

  • Android 辅助功能对讲来说出片段的标题

    有没有办法让 Android 可访问性中的对讲功能在片段事务后说些什么 我基本上希望对讲在切换后说出片段的名称 标题 这些标题设置为操作栏的标题 可以在那里访问吗 用户可以将手指移动到操作栏中的文本顶部来了解他们所在的屏幕 但除非他们已经熟
  • 应用程序池回收如何影响 ASP Net 会话状态?

    我知道当应用程序池被回收时 会启动一个新的工作进程 但我对在此过程中如何处理过期和有效会话感到困惑 哪些传递给新的工作进程线程 哪些被消除 它将做什么 用户A的会话已过期 用户B的会话有效 回收后 当用户A和用户B请求时 他们的会话状态会是
  • Maven 属性加载顺序

    我知道 Maven 属性可以在不同的位置定义 m2 settings xml在本地机器上
  • 如果我只知道文件名的一部分,如何打开文件?

    我需要打开一个我不知道完整文件名的文件 我知道文件名是这样的 filename esy 我确信该文件在给定目录中只出现一次 filename esy已经是一个 shell Ready 通配符 如果情况总是如此 您可以简单地 const SO
  • Skylake 中干净缓存行的写回?

    我观察到 Skylake SP 在真实硬件上对干净的缓存行进行写回 Leeor 对这篇文章的回答对于 Intel Core i3 i7 数据从缓存集中逐出后的去向 https stackoverflow com questions 1941
  • RESTful API 根据用户角色不同的响应

    我使用 Laravel 作为我的 PHP 框架 这是一个约定index show store 控制器中的功能 我有两种类型的用户 管理员和普通用户 让我们假设有一个Order 在餐厅 模型 我想实施index其控制器的功能 一位用户可以有多
  • 窗格形状修改

    好吧 长话短说 我正在尝试创建一种聊天 消息系统 并且需要一点帮助 我正在尝试在容器上创建一个箭头 如下图所示 该图像是从 ControlsFX 及其 PopOver 窗口中取出的 我不能使用他们的弹出窗口小部件 因为它的行为与我使用它的目
  • 获取查询的运行时执行计划

    我有一个执行一些 sql 查询的应用程序 如何从 sqlplus 或其他 Oracle 客户端获取当前正在执行的查询的执行计划 如果有必要 我可以修改应用程序中使用的 oracle 会话 我不想使用explain plan并手动执行该查询
  • sql 中的希伯来语和其他语言

    我有 SQL Server 托管 客户端是移动应用程序 我的逻辑是用户创建数据并将其存储在服务器上 有些数据是文本 然而 用户可以输入英语 希伯来语或他的客户端支持的任何其他语言 我需要为表指定哪种排序规则才能支持所有语言 问候 约阿夫 您
  • Windows 调试工具未安装

    我正在尝试通过 Windows SDK 安装 Windows 调试工具 两次尝试后我不知道该怎么做 我开始安装 没有收到任何错误 但调试工具 windbg 和 kd 却找不到 日志几乎毫无用处 9 16 59 PM Monday July
  • AttributeError:“CharField”对象没有属性“model”

    models py file from django db import models class Stocks models Model symbol models CharField max length 20 unique True
  • 如何从语言代码中获取语言的全名? (例如:从“en”到“English”)

    我正在寻找与此问题 答案等效的 dart 从语言代码中获取该语言的语言名称 https stackoverflow com questions 36061116 get language name in that language from
  • 如何监控 Amazon S3 服务中对象的带宽?

    如何以编程方式监控AWS S3服务中对象的带宽 我想这样做是为了防止使用我们服务的客户过度使用带宽并导致我们的成本超出我们的承受能力 我们希望限制每个对象 1TB 的带宽 详细的使用情况报告仅针对每个存储桶 而不是每个对象 你能做的是启用日
  • Web2py:下载文件/显示图像

    我最近开始使用 Web2py 框架 我发现它非常好 然而 我现在遇到了一个 基本 问题 Context 我正在构建的网站是一个科学代码界面 人们填写表格并提交 然后 数据 写入共享文件夹内的文件中 由代码处理 在后台作为守护进程运行 代码与
  • IE10 Flexbox 宽度包含填充,导致溢出。 box-sizing: border-box 没有修复

    本例中的 LHS flex 子项具有 1em 填充 这将导致 RHS 溢出父项 div style display ms flexbox width 200px border 5px solid black div style paddin
  • 为什么要将新的 ArrayList 分配给 List 变量?

    我是java新手 当我浏览网上许多示例的代码时 我看到人们声明变量ArrayList简单地说List几乎在所有情况下 List
  • 贝叶斯网络与 R

    我正在尝试建立贝叶斯网络模型 但是我无法安装合适的软件包 尝试过gRain bnlearn and Rgraphviz用于绘图 我在 R 2 15 和 3 2 中尝试过 以下是错误消息 library gRain Loading requi
  • Jquery .click 不触发

    尝试在这里学习 JQuery 一开始非常简单 当我单击该按钮时 页面会重新加载 但什么也没有发生 这是我的 JS 这是我的html div class panel right div
  • Oracle 位和函数

    我对 oracle bitand 功能感到困惑 我知道它用于控制是否设置两位 但是 被设定的意义何在 何时以及为何使用它 如果你能给出一个基于真实例子的例子 我会很高兴 感谢您的回答 在二进制中 set 的意思是 值为 1 未设置 意味着
  • KnpSnappyBundle 和 Symfony 3.4:图像和/或 css 导致超时

    我已经在现有的 Symfony 3 4 项目上安装了 KnpSnappyBundle 我已经用 HTML 树枝测试了 PDF 生成器 仅包含文本 没有图像 没有 css 没有 js 它工作正常 然后我使用绝对 URL 添加 到树枝 图像和