Laravel错误的公共路径文件上传

时间:2013-06-09 13:24:34

标签: file-upload deployment path laravel laravel-3

我已经使用本指南部署了laravel。

http://juniorgrossi.com/deploying-laravel-applications-on-a-shared-host/

在我的网络服务器上,我有一个public_html文件,现在包含我所有可公开访问的文件和一个包含其余文件的laravel文件夹,所以我拆分了默认的laravel结构进行部署。

默认情况下,在我的开发服务器上,公用文件夹位于laravel文件夹内,而不是位于同一目录级别。

我遇到的问题是当我使用这样的东西时:

// Upload the file
Input::upload('image', 'public/uploads', $filename);

与此相同。

// Upload the file
Input::upload('image', path('public') . 'uploads', $filename);

现在尝试在我的la_vel文件夹中查找公共文件,而不是尝试使用我的public_html文件夹中的uploads文件夹。

我得到了

  

无法创建“/ uploads”目录

在我的开发服务器上,公共文件夹仍在文件夹中,因此它是合乎逻辑的。

我该如何解决这个问题?

5 个答案:

答案 0 :(得分:1)

您可以尝试此操作(在文件夹名称后添加斜杠)

Input::upload('image', path('public') . 'uploads/', $filename);

答案 1 :(得分:1)

也许试试这个....就像测试一样

Input::upload('image', URL::to_asset('uploads/'), $filename);

答案 2 :(得分:0)

你也可以试试 Intervention/image包。 我正在使用它,我发现它很容易使用。它还具有调整大小和裁剪功能。

这很简单:

Image::make(Input::file('file')->getRealPath())->save('uploads/' . $filename);

答案 3 :(得分:0)

将paths.php修复为../ public_html

之前我已经完成了这个但是它失败了,因为我意外地上传了一个png和我的jcrop函数,庄稼和保存图像失败了,因为它目前只需要jpg。所以这让我觉得我的paths.php设置实际上并不好。

感谢大家的帮助! (我觉得自己像个傻瓜。)

答案 4 :(得分:0)

就我而言,我遇到了同样的问题。然后我手动创建它,CHMODed lil'bastard,它工作正常!

历史悠久(不久......):获得许可!

如果您拥有写入/读取文件夹的权限,那么您会很酷!如果不这样做,则更改权限!如果您无法更改它,请将上载的文件放在权限允许您访问该文件的位置。