【问题标题】:Upload files on server, Laravel在服务器上上传文件,Laravel
【发布时间】:2020-11-13 16:09:25
【问题描述】:

我的 laravel 项目有问题。我做了一个系统,客户必须上传带有图片的产品。但是当我将项目上传到在线主机时,图片上传不起作用,我找不到问题所在。

广告:我有 public_html 之外的 Laravel 文件夹,我没有使用主文件夹 (public_html),但我在服务器中使用了另一个域,所以你看到的路径 ta 的配置没有“ public_html"

代码:

控制器

public function store(Request $request)
    {
        $newProduct = new App\Product;

        $newProduct -> name = $request -> name;
        $newProduct -> description = $request -> description;
        $newProduct -> price = $request -> price;

        if ( $request -> hasFile('photo') ) {
            $file = $request -> file("photo");
            $fileUpload = Storage::disk('public') -> put('img/products', $file);
            $newProduct -> photo = $fileUpload;
        }

        $newProduct -> save();

        return back() -> with('status', 'Ok.');
    }

文件系统:

'public' => [
            'driver' => 'local',
            'root' => public_path(),
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

和配置路径

public function register()
    {
        $this->app->bind('path.public',function(){
            return'/home1/client/domain.com/menu';
        });
    }

重要提示:当我保存寄存器时,它可以工作,我可以在数据库中看到文件名,但不能将文件保存在文件夹中。

【问题讨论】:

    标签: laravel server upload storage host


    【解决方案1】:

    谢谢,但是 putFile 不起作用。

    最后我可以修复错误。我不知道它为什么要创建一个文件夹并将文件保存在 Laravel 文件夹中。所以,我用路由手动替换了“public_path”,只是一个字符串。现在它保存在正确的文件夹中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-17
      • 2016-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-18
      • 2018-01-25
      • 2013-01-28
      相关资源
      最近更新 更多