【问题标题】:MPDF always gives 500 Internal Server ErrorMPDF 总是给出 500 Internal Server Error
【发布时间】:2020-03-20 09:27:50
【问题描述】:

我查看了多个关于这个问题的教程,显然 MPDF 是最简单的。

<?php 
  require_once('tools/mpdf.php');
  $mpdf = new mPDF();
  $mpdf->WriteHTML('<p>Your first taste of creating PDF from HTML</p>');

  $mpdf->Output();
  exit;
?>

显然,我将在此基础上进行构建,但由于某种原因,我什至无法让基础知识正常工作。我得到的只是“500 内部服务器错误”。我已将文件精简为

<?php 
  require_once('tools/mpdf.php');
?>

我得到了那个错误。我已经确保 mpdf.php 文件在工具目录中并正确加载到我的服务器上,所以那里没有问题..

有什么想法吗?

【问题讨论】:

  • 我建议调高错误消息级别以查看错误消息是什么。 error_reporting(E_ALL) 应该这样做。在您的问题中发布输出以进一步澄清。
  • 添加 error_reporting sn-p 不会改变任何东西..
  • 没有输出可发布。只是一个 500 错误。
  • 您使用的是 Apache 吗?也许检查 apache 错误日志?
  • 即使这是一个 5 年前的问题,仅针对可能遵循 cmets 提示的其他人:设置 error_reporting(E_ALL); 将始终输出“HTTP 错误 500”页面,以防显示错误被禁用它在默认安装中。调试时,还设置ini_set("display_errors", "1"); 以显示错误、通知等。更改 ini_settings 可能会被禁用,因此请检查ini_set() 的结果值如果是 FALSE(当前 PHP 版本)或“”对于 5.3 之前的版本,这意味着更改失败。

标签: mpdf


【解决方案1】:

我遇到了这个问题并找到了一个简单的解决方案。 Mpdf 在我的本地机器上运行良好,但在远程服务器上使用它时遇到了麻烦。

如果其他人遇到同样的问题,在远程服务器上部署您的应用程序时。

  1. 检查您的服务器错误日志,
  2. 如果您看到这样的错误“Exceptioncaught Mpdf\MpdfException: Temporary files directory.... is not writeable”
  3. 您可以尝试更改 mpdf/tmp 文件夹的权限示例:chmod 777 /vendor/mpdf/mpdf/tmp
    1. 还要检查目录的所有者,如果您使用的是 apache,请将其分配给您的网络服务器示例:chown www:www /vendor/mpdf/mpdf/tmp

它对我有用,希望它可以帮助其他人......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-02
    相关资源
    最近更新 更多