服务器上的文件权限错误

时间:2016-05-11 12:50:13

标签: php codeigniter download sendmail host

我正在send grid使用codeigniter。我的目标是发送pdf邮件。

  

遇到未捕获的异常

     

类型:Guzzle \ Common \ Exception \ InvalidArgumentException

     

消息:无法打开http://website.com/projectdemo/webusa/uploads/files/ash.pdf进行阅读

     

文件名:选择/ LAMPP / htdocs中/ projectdemo / webusa /应用/ THIRD_PARTY / sendEmail /供应商/狂饮/狂饮/ SRC /狂饮/ HTTP /消息/ PostFile.php

     

行号:53

我的PHP代码: -

$pdfFilePath = HOSTNAME."uploads/files/ash.pdf";
 $this->sendMail($to, $subject, $message , $pdfFilePath );

3 个答案:

答案 0 :(得分:3)

您无法使用HTTP路径访问文件。将其更改为绝对路径,如下所示

root_directory/path/to/file/residing/ash.pdf

eg(local machine): D://my_folder/myfiles/ash.pdf
eg(live server): /public_html/myfiles/ash.pdf

答案 1 :(得分:0)

当尝试将文件发布到远程位置时,Guzzle要求该文件是本地文件。您应该考虑在http://website.com/projectdemo/webusa/uploads/files/ash.pdf下载文件,然后上传。

如果您不热衷于将整个文件下载到临时位置然后再上传,那么一种可能的解决方案就是使用流。

还要看一下这个讨论:

答案 2 :(得分:0)

试试这个

如果在应用程序文件夹中

String

如果是外部应用程序文件夹

$pdfFilePath = APPPATH."uploads/files/ash.pdf";