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

时间:2019-05-09 13:09:19

标签: php laravel open-basedir knp-snappy

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

我的快照配置如下

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

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

但是我遇到了以下错误

  

local.ERROR:is_dir():open_basedir限制有效。文件(/ tmp)不在允许的路径内:

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

1 个答案:

答案 0 :(得分:0)

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

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

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