【发布时间】:2016-05-24 10:13:05
【问题描述】:
我正在使用 CodeIgniter 3 和 mPDF 来生成 PDF 文件。 在我的控制器中,我需要指定文件路径来存储 pdf 文件。
目前,这段代码在我的本地服务器上运行良好:
$pdfFilePath = FCPATH."/raports/invoice_".$data['nr'].".pdf";
但不适用于生产(托管服务器)。
当我绕过时,我已将 FCPATH 替换为 $_SERVER['DOCUMENT_ROOT']
$pdfFilePath = $_SERVER['DOCUMENT_ROOT']."raports/invoice_".$data['nr'].".pdf";
此解决方案适用于生产环境(但不适用于我的本地服务器),因此每次我想上传新版本时都需要更改它。
错误信息说:
Message: fopen(): open_basedir restriction in effect.
fopen failed to open stream: Operation not permitted
任何可以在本地和生产服务器上运行的解决方案?
【问题讨论】:
-
$_SERVER['DOCUMENT_ROOT']在本地的值是多少,它的期望值是多少?还要提及您的本地和服务器操作系统。 -
你在使用 apache 吗?
-
我的本地开发平台是 PHP 5.6.20 + Apache on Synology Disk Station (DSM 6.0)
-
@Tikky 如果控制器可以发布完整的代码
标签: php file codeigniter codeigniter-3 mpdf