php - 如何修复共享服务器中的 open_basedir 限制错误?

标签 php laravel open-basedir knp-snappy

我正在设置 laravel-snappy 来创建 pdf。

我的快速配置如下

<?php
return array(
'pdf' => array(
        'enabled' => true,
        'binary' => base_path('vendor/h4cc/wkhtmltopdf/bin/wkhtmltopdf'),
...

通过在tinker中运行config('snappy'),我还获得了laravel项目文件夹中所需的确切路径

但是我收到以下错误

local.ERROR: is_dir(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s):

如何在不更改 php 设置的情况下解决此问题?

最佳答案

该包似乎尝试写入 /tmp 文件夹,但受到 PHP ini 选项 open_basedir 的限制。 .

您可以将此文件夹路径更改为应用程序中的某个路径,例如 storage/tmp,使用 setTemporaryFolder()方法。

$pdf = App::make('snappy.pdf.wrapper');
$pdf->setTemporaryFolder(storage_path('tmp'));
// ...

关于php - 如何修复共享服务器中的 open_basedir 限制错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56060192/

相关文章:

php - 只获取您关注的用户的帖子 mysql 查询

laravel - 在 null 上调用成员函数 createToken()

php - 在谷歌日历上同步约会时收到警告?

php - 我们可以通过多少种方式通过页面之间的导航传递变量?

php - 将数据从一个 mysql 表复制到另一个表时出现内存问题

php - 多个 SELECT FROM 多表并按日期排序

VerifyCsrfToken.php 第 68 行中的 Laravel 5.4 TokenMismatchException

php - mysql 中 WHERE 的问题

php - 为什么在 IIS 上使用 open_basedir 和 PHP 作为 FastCGI?

php - Codeigniter open_basedir_restriction 对共享主机有效