Laravel 拉威尔-你不知道';我无权访问此服务器上的/images/
我有一个Laravel项目上传到Heroku 一切正常,除了上传图像的功能。 当我尝试上传时,它显示 “禁止 您没有访问此服务器上的/images/的权限。“ 下面是我的store()函数的外观Laravel 拉威尔-你不知道';我无权访问此服务器上的/images/,laravel,heroku,Laravel,Heroku,我有一个Laravel项目上传到Heroku 一切正常,除了上传图像的功能。 当我尝试上传时,它显示 “禁止 您没有访问此服务器上的/images/的权限。“ 下面是我的store()函数的外观 public function store(Request $request) { $this->validate($request, [ 'filename' => 'required', 'filename.*' => 'image|mimes:
public function store(Request $request)
{
$this->validate($request, [
'filename' => 'required',
'filename.*' => 'image|mimes:jpeg,png,jpg,gif,svg|max:2048'
]);
if ($request->hasFile('filename')) {
foreach ($request->file('filename') as $image) {
$name = $image->getClientOriginalName();
$image->move(public_path() . '/images/', $name);
$data[] = $name;
}
}
return back()->with('success', 'Images uploaded successfully!');
}
这本身并不能解决您的问题。但你以后会面临另一个问题 如果你希望文件能够保存,就不应该直接上传到Heroku的文件系统上。希罗库有一个好主意。每个dyno都是一个独立的容器。每当重新启动应用程序时,都会启动一个新容器,这意味着文件系统中存储的任何内容都将永久丢失 您应该将文件上载到专用存储系统,如Google Cloud或Amazon S3。
请参阅您确定服务器上存在/images/文件夹,并且您的代码对该文件夹具有写入权限吗?@MaaikeBrouwer感谢您的回复。是的,我确定存在图像文件夹。如何确保该文件夹具有写访问权限?若要检查读/写访问权限,请转到服务器的控制台环境(我认为有可能打开这样的heroku环境?),并使用ls-l检查文件夹的读/写权限。如果您不知道此操作的结果,请查看。应该可以使用设置权限