如何解决点击链接后无法打开上传的文件
{{ trans('cruds.ticket.fields.attachments') }}
<td>
@foreach($ticket->attachments as $attachment)
<a href="{{ $attachment->getUrl() }}">{{ $attachment->file_name }}</a>
@endforeach
</td>
当我单击链接时,它正在显示这样的错误...
找不到对象! 在此服务器上找不到请求的URL。推荐页面上的链接似乎有误或已过时。请将该错误告知该页面的作者。
如果您认为这是服务器错误,请与网站管理员联系。
错误404 本地主机 Apache / 2.4.43(Win64)OpenSSL / 1.1.1g PHP / 7.4.5
解决方法
laravel框架具有良好的存储机制。
通过看到您的代码,我假设是这样,
$attachment->getUrl()
应该返回类似localhost/abc.img
的内容,并且它与apache服务器管理的任何资源都不匹配。
所以。让我们更改$attachment->getUrl()
返回到localhost/files/abc.img
的链接
并为此链接创建路由,例如:
Route::get('files/{filename}',function ($filename)
{
$file = Storage::get('files/'.$filename);
$type = $mimetype = Storage::mimeType('product_image/'.$filename);
$response = Response::make($file,200);
$response->header("Content-Type",$type);
return $response;
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。