Laravel 未在服务器上上传实际文件

Laravel not uploading actual files on server

我最近主持了我的第一个 Laravel 项目。因此,这意味着 public 文件夹位于 public_html 而其他文件夹位于根目录中的一个分支上。

我正在将文件上传到服务器并收到错误 Could not create img/photos directory(释义)。我在谷歌上搜索了很长一段时间,之后我向 imgphotos 授予了 777 权限,错误消失了。唯一的问题是现在没有错误被捕获但是文件没有被上传。

注意:在我的表单声明中,我设置了 'files'=>true,我已经正确修改了我的自动加载和 paths.php 路径。

// controller
            // upload cover photo if any
            $path = public_path().'/img/album-cover-photos';
            if(Input::hasFile('photo'))
            {
                $ext = Input::file('photo')->getClientOriginalExtension();
                $name = "Album-Cover-".$album->id.'-'.date('YmdHis').'.'.$ext;

                Input::file('photo')->move($path,$name);
                $album->cover_photo = $name;
                $album->save();
            }

可能是什么问题?

让我来回答这个问题。我找到了问题所在。即使我坚持我已经正确设置 paths.php 路径的问题,这也正是问题所在。 public 路径已设置为 __DIR__.'/../public_html/mylaravelpublic 而不是 __DIR__.'/../../public_html/mylaravelpublic。 我真的希望这对某人有所帮助。

只是说,我在共享主机上,所以我的 laravel public 文件夹内容放在上面的 public_html 子文件夹中,而不是 public_html itself.If 你是不在共享主机上,我认为你的路径应该以 public_html 结尾,没有任何子文件夹。

$path = public_path().'/../img/album-cover-photos';
            if(Input::hasFile('photo'))
            {
                $ext = Input::file('photo')->getClientOriginalExtension();
                $name = "Album-Cover-".$album->id.'-'.date('YmdHis').'.'.$ext;

                Input::file('photo')->move($path,$name);
                $album->cover_photo = $name;
                $album->save();
            }`enter code here`