【问题标题】:TCPDF unable to output file by saving. Path on Mac?TCPDF 无法通过保存输出文件。 Mac上的路径?
【发布时间】:2022-01-05 07:59:45
【问题描述】:

我在这里检查了一些类似的问题,但没有得到答案,解决了我的问题。

我使用 TCPDF 通过 PHP 生成 PDF。

当我使用$pdf->Output($file_total, 'I'); 一切都很好,文件显示在浏览器中。

如果我使用保存到本地主机选项$pdf->Output($file_total, 'F'); 我会收到此错误:

“打开流失败:/opt/lampp/htdocs/project/tcpdf_min/include/tcpdf_static.php 第 1821 行的权限被拒绝” “TCPD 错误:无法创建输出文件”

我为保存PDF文件设置的路径是:“/opt/lampp/htdocs/project/files/2021”

我做错了什么?我的路错了吗?

强制保存$pdf->Output($file_total, 'D'); 工作得很好,所以我必须对 mac 上的路径做些错误... 请帮忙!

谢谢

【问题讨论】:

  • @KJ 我已经看到了答案。 ob_clean() 对我不起作用。我对“yourpath/output.pdf”做错了,我输入的路径是“/opt/lampp/htdosc/project/files/2021”,我得到了上面的错误。我需要将 pdf 存储在这个特定的文件夹中......有什么想法我做错了什么吗?!
  • @KJ 感谢您的回答。这是一种虚拟机。文件夹 2021 的完整路径是“nfs://192.168.64.2/opt...”,它也不起作用。我还尝试了“192.168.64.2/opt...” - 也没有...我在路径上遗漏了一些东西。我打印了路径变量,它们看起来应该是这样的......我只需要知道如何在 mac 上设置这个虚拟 LAMPP 机器的路径......
  • @KJ,好的,我尝试使用“localhost:8080/project...”,现在我不再收到错误的第一部分(第 1821 行),但我仍然收到“TCPPDF 错误:无法创建输出文件:localhost:8080/project/files/2021/output.pdf"任何想法?!
  • @KJ 我以管理员身份登录...但我会检查。所有其他输出选项(强制保存“D”,在浏览器中显示“I”和字符串“S”)工作正常......只有保存滞后......我真的很糟糕......
  • @KJ 所以我将lampp机器中所有文件夹的属性更改为每个人“读写”......什么也没发生。

标签: php path tcpdf lampp


【解决方案1】:

在 cmets 中,我们都经历了可能的原因,例如查找绝对位置而不是相对位置以及检查非管理员进程的文件夹权限,因为这也是被怀疑的。因此,我们之间的结论是:-

使用地址作为

"localhost:8080/projects..."

并确保目标文件夹设置为权限

"read/write" 适用于所有用户

对于生产用途,需要将写入权限缩减回进程和管理员,而不是所有用户。

【讨论】:

    猜你喜欢
    • 2011-06-10
    • 2019-10-21
    • 2016-04-19
    • 1970-01-01
    • 2015-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多