Laravel邮件Swift_IoException无法打开文件进行阅读

时间:2016-08-18 13:26:14

标签: laravel swiftmailer

我试图在电子邮件中发送附件,它会给出以下错误 但当我检查给定的url文件是否存在并下载工作。

MediaStore.ACTION_VIDEO_CAPTURE

7 个答案:

答案 0 :(得分:1)

我也有同样的问题,检查你附加的mime类型的文件。要调试更多尝试不同的扩展文件。

答案 1 :(得分:0)

您可能会给出错误的附件路径。 使用同步时,以下代码可以正常工作 邮件::以($电子邮件)                  - >置于();

$this->attach($path), [
            'mime' => 'application/pdf',
        ]);

但是当使用像db这样的其他队列驱动程序时 邮件::以($电子邮件)                  - >队列 你必须提供像这样的完整路径

$this->attach(public_path($path)), [
        'mime' => 'application/pdf',
    ]);

这就是我的问题得到解决的方法!感谢

答案 2 :(得分:0)

我使用之前没有实际存在的uploading the image解决了! 你可以尝试一下。检查邮件中所有图像是否实际存在于文件夹中。 可能还有其他问题。 尝试为喜欢邮件模板的图片提供777权限。

答案 3 :(得分:0)

我遇到了同样的问题,并通过提供要附加的文件的绝对路径找到了解决方案。使用Laravel函数base_path()获取项目的绝对路径,并提及文件的相对路径。

Syntax: base_path('public/myFiles/filename.pdf');

希望它会有所帮助...

答案 4 :(得分:0)

  1. 授予文件夹中的777访问权限
  2. 从路径中删除空格
  3. 仍然出现错误?检查日志文件存储

答案 5 :(得分:0)

我也面临着同样的问题,检查日志文件后,我发现迅速从http://获取文件,而不是直接从文件系统获取文件。

就我而言,我将服务器安装在防火墙后面并使用专用ip,这使我的服务器无法直接访问URL(https://newsletter.domain.com/media/images/aee0c6394d02225d1f740dc.jpeg)。问题实际上来自网络配置。

我可以轻松解决此问题,即编辑主机文件以其专用IP添加FQDN

192.168.0.2 newsletter.domain.com

希望这会有所帮助...

答案 6 :(得分:0)

我也有过几次这个问题,大多数情况下是关于指向您的文件夹的权限。

进入文件夹所在的项目。尝试像这样更改文件夹的权限:

sudo chmod -R 777 yourfoldername

我希望在此之后,您和其他苦苦挣扎的人不会再有问题了。

P.S。小心将777权限授予您的文件夹。我建议您先了解一些信息。