0

我想在我的项目中使用 KnpSnappy 将 html 转换为 pdf,并按照https://github.com/KnpLabs/KnpSnappyBundle中的说明进行操作。起初我在本地尝试过,一切都很完美。

而且我想将它上传到我的虚拟服务器上(使用 plesk)。在那里我更改了 wkhtmltopdf 的二进制路径。因为我之前在 Windows 上测试过,我的服务器是用 ubuntu 运行的。

我还在 ssh 上安装了 wkhtmltopdf,并通过 wkhtmltopdf --version 进行了尝试。它可以工作,但是当我在 symfony 中尝试它时,页面不再加载,我得到异常 ERR_TOO_MANY_REDIRECTS。

.env:

###> knplabs/knp-snappy-bundle ###
WKHTMLTOPDF_PATH=/usr/local/bin/wkhtmltopdf
WKHTMLTOIMAGE_PATH=/usr/local/bin/wkhtmltoimage
###< knplabs/knp-snappy-bundle ###

配置/包/knp_snappy.yaml:

knp_snappy:
    pdf:
        enabled:    true
        binary:     '%env(WKHTMLTOPDF_PATH)%'
        options:    
            enable-local-file-access: true
          
    image:
        enabled:    true
        binary:     '%env(WKHTMLTOIMAGE_PATH)%'
        options:    
            enable-local-file-access: true

所以这是目前的情况,我希望有人能帮助我。

4

1 回答 1

0

尝试使用https://github.com/h4cc/wkhtmltopdf-amd64

然后在配置中的路径应该是这样的:

knp_snappy:
    pdf:
        enabled:    true
        binary:     '%kernel.project_dir%/vendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf-amd64'
        options:
            page-size: A4
            encoding: UTF-8
    image:
        enabled:    true
        binary:     '%kernel.project_dir%/vendor/h4cc/wkhtmltoimage-amd64/bin/wkhtmltoimage-amd64'
        options:    []

    process_timeout: 3
于 2021-11-09T19:04:31.087 回答