图片未在Laravel中的正确位置上传

时间:2019-05-06 11:04:08

标签: php laravel laravel-5 cpanel

我在Laravel项目中有一张图片上传表格。

我想将上传的图像保存到public/images/位置。

但是图像上传到public/app/images位置。

app的发源地!

config / filesystem.php

'disks' => [

 'local' => [
    'driver' => 'local',
    'root' => public_path(''),
],

'public' => [
    'driver' => 'local',
    'root' => public_path(''),
    'visibility' => 'public',
],

's3' => [
    'driver' => 's3',
    'key' => 'your-key',
    'secret' => 'your-secret',
    'region' => 'your-region',
    'bucket' => 'your-bucket',
  ],
],

控制器

if($this->request->hasFile('photo')) 
{
    $image_url = $this->request->photo->store('/images/campaign/large');

    $image = substr($image_url, strrpos($image_url, '/') + 1);
}

我在本地项目中应用了相同的代码。图片上传到正确的位置。

但是此问题在我的cPanel服务器项目中发生。我已经清除了实时服务器中的现金。

哪里出了错?

3 个答案:

答案 0 :(得分:0)

我认为该Controller代码可以帮助您。

if($this->request->hasFile('photo')) 
{
    $image_url = $this->request->photo->store(public_path('images'));

    $image = substr($image_url, strrpos($image_url, '/') + 1);
}

答案 1 :(得分:0)

如果您使用的是linux或mac os,也许可以使用chmod -R 777目录文件,或者因为昨天在我的办公室而无法清除缓存。

已满: https://kb.iu.edu/d/ahic

答案 2 :(得分:0)

我认为您错过了为存储路径创建符号链接的过程。 请点击以下链接:Larvel Public Disk

简而言之,您需要运行 php artisan storage:link