Image Can';t将图像数据写入path laravel live项目
在我的项目中,用户可以上传个人资料图片,如果他们不上传,则会有默认图片。我在我的Laravel项目中使用它,并且100%有效。现在我已经在线主持了我的项目,它不允许我上传个人资料图片,但会选择默认图片。我不知道为什么。我收到的错误消息是: 干预\Image\Exception\notwriteableexception无法将图像数据写入路径(/home/n1huer/laravel/public/uploads/avatars/1525256072.png) 我的控制器是Image Can';t将图像数据写入path laravel live项目,image,laravel,upload,Image,Laravel,Upload,在我的项目中,用户可以上传个人资料图片,如果他们不上传,则会有默认图片。我在我的Laravel项目中使用它,并且100%有效。现在我已经在线主持了我的项目,它不允许我上传个人资料图片,但会选择默认图片。我不知道为什么。我收到的错误消息是: 干预\Image\Exception\notwriteableexception无法将图像数据写入路径(/home/n1huer/laravel/public/uploads/avatars/1525256072.png) 我的控制器是 public fun
public function update_avatar(Request $request)
{
if($request->hasFile('avatar')){
$avatar = $request->file('avatar');
$filename = time() . '.' . $avatar->getClientOriginalExtension();
Image::make($avatar)->resize(300,300)->save( public_path('/uploads/avatars/' . $filename) );
$user = Auth::user();
$user->avatar = $filename;
$user->save();
}
return view('myaccount', array('user' => Auth::user()) );
}
如果选择默认路径,则文件路径必须正确
任何帮助都将不胜感激,谢谢您需要使“/uploads/avatars/”可写,因为错误表明它不可写 登录到远程服务器(或使用控制面板)并更改您尝试写入的文件夹的权限:
chmod 755 /home/n1huer/laravel/public/uploads/avatars
另一方面, 我将进一步查看公用文件夹和权限: 以下是一些好的建议: 此外,请查看官方文件:
您需要使“/uploads/avatars/”可写,因为错误是说它不可写 登录到远程服务器(或使用控制面板)并更改您尝试写入的文件夹的权限:
chmod 755 /home/n1huer/laravel/public/uploads/avatars
另一方面, 我将进一步查看公用文件夹和权限: 以下是一些好的建议: 此外,请查看官方文件:
您也可以使用该命令
sudo chmod-ra+rwx/path/to/folder
授予文件夹及其内部每个文件和文件夹的权限。如果不希望文件可执行,请从任一命令中省略x
尽情享受你的灵魂
快乐编码…您也可以使用该命令
sudo chmod-ra+rwx/path/to/folder
授予文件夹及其内部每个文件和文件夹的权限。如果不希望文件可执行,请从任一命令中省略x
尽情享受你的灵魂
快乐编码…对于出现此问题的用户:
首先,您需要知道为什么会出现此问题
-看到这条路了吗
这条路就是这样考虑的
但它在这里的目的是在这一点上的实际情况
这就是上述消息出现问题的原因
要解决此问题,您只需完成以下操作
来吧,这部分
->保存(公共路径('/uploads/avatars/'.$filename))
然后用这个代码替换它,变成这样
->保存(“./uploads/avatars/”.$filename)
这样,问题就解决了,而不需要做任何其他可能会留下另一个问题的事情
首先,您需要知道为什么会出现此问题
-看到这条路了吗
这条路就是这样考虑的
但它在这里的目的是在这一点上的实际情况
这就是上述消息出现问题的原因
要解决此问题,您只需完成以下操作
来吧,这部分
->保存(公共路径('/uploads/avatars/'.$filename))
然后用这个代码替换它,变成这样
->保存(“./uploads/avatars/”.$filename)
这样,问题就解决了,而不需要做任何其他可能会留下另一个问题的事情。我在使用图像干预库时也遇到了同样的问题。它在我的本地机器上运行得很好,但在aws Ubento机器上它给出了这个错误。我尝试了很多方法,但最后我决定这一切都是关于许可问题。我使用下面的代码从
$request
保存图像,然后调整其大小,然后将其保存在公共
目录下的配置文件
文件夹中
$img=Image::make($avatar)->resize(300,300);
$img->save(public_path('profile/' .$file_storage_name));
我在我的aws
myprofile
文件夹中看到的内容由root
用户拥有和分组。因此,我使用sudo chown-R 1000:1000 profile
更改了所有权,然后使用sudo chgrp www-data profile
更改了组,然后使用chmod 775 profile
授予文件夹读、写和执行权限。然后,神奇,它工作了。如下图所示
我在使用图像干预库时也遇到同样的问题。它在我的本地机器上运行得很好,但在aws Ubento机器上它给出了这个错误。我尝试了很多方法,但最后我决定这一切都是关于许可问题。我使用下面的代码从
$request
保存图像,然后调整其大小,然后将其保存在公共
目录下的配置文件
文件夹中
$img=Image::make($avatar)->resize(300,300);
$img->save(public_path('profile/' .$file_storage_name));
我在我的aws
myprofile
文件夹中看到的内容由root
用户拥有和分组。因此,我使用sudo chown-R 1000:1000 profile
更改了所有权,然后使用sudo chgrp www-data profile
更改了组,然后使用chmod 775 profile
授予文件夹读、写和执行权限。然后,神奇,它工作了。如下图所示
我在航站楼做这个吗?那么,当我再次托管它时,它会工作吗?您将需要更改远程计算机上的权限我在终端上这样做吗?那么,当我再次托管它时,它会工作吗?您需要更改远程计算机上的权限
$img=Image::make($avatar)->resize(300,300);
$img->save(public_path('profile/' .$file_storage_name));