2016-11-27 59 views
1

所以我在xampp的windows 10机器上使用laravel。权限问题laravel 5 storeas()

我试图从一个表单上传文件到存储/应用程序/图像/但每次我试图这样做,我来了一个权限问题。

ErrorException在FilesystemAdapter.php行119: 的fopen(C:\ XAMPP \ htdocs中\测试\ PUBLIC):未能打开流:拒绝

这我上传的功能权限 该文件是

$request->file('imgurl')->storeAs('images',request()->file('imgurl')->getClientOriginalName()); 
return back(); 

我所做的事情

  1. 检查文件正在通过,一个dd($request->getClientOriginalName())返回文件的原始名称
  2. 检查存储/ images文件夹的权限。它们被设置为755(drwxr-XR-X 1)
  3. php artisan cache:clearchmod -R 777 app/storagecomposer dump-autoload
+1

所以Windows 10定义的目录正确的权限已** CHMOD **命令?我错过了什么。 (在cygwin?) – Kyslik

回答

0

检查您的文件大小不超过 'upload_max_filesize的' 限制在php.ini文件通知。

0

这是一个古老的线程,但我遇到了同样的问题,并找出答案。当文件上传失败时会发生这种情况。 当文件上传失败时,文件的realPath变量将指向Laravel的public文件夹,而不是上传的文件(因为没有)。

因此,在你的代码,你应该检查该文件上传成功:

<?php 
if($request->hasFile('imgurl')) 
{ 
    // You can store the uploaded file here 
} 

至于说,你的问题的根源是上传问题。你可以检查一些事情。

  1. 没有上传超过upload_max_filesize
  2. 做了上传超过post_max_size
  3. 你对在upload_tmp_dir