fopen(): 文件名不能为空 - Laravel 5 IIS 7
fopen(): Filename cannot be empty - Laravel 5 IIS 7
我一整天都在面对这个问题,我已经看到了这个问题() 什么都没有...
我已经编辑了我的 C:\Windows\Temp
完全控制权限 IISR_IUSERS
我在 windows 服务器 2008 R2 上的 IIS 7 上使用 NTS PHP 版本。
在我的 Laravel 代码上,我正在这样做:
$input['picture_url'] = $request->file($fileInForm)->store('uploads');
在我的开发环境中,它是一个 Macosx 我这样做是为了将图像保存到我这样配置的上传文件夹中:
/*My code to upload imagem on MACOSX dev enviroment*/
$input = array();
$fileInForm = 'picture_url';
if ($request->hasFile($fileInForm)) {
$file = $request->file($fileInForm);
if ($file->isValid())
{
var_dump($request->file('default_picture_url')->path());
die();
// Filename is hashed filename + part of timestamp
$hashedName = hash_file('md5', $file->pathName());
//$timestamp = (microtime() * 1000000);
$newFilename = $hashedName . '.' . $file->getClientOriginalExtension();
Storage::disk('uploads')->put($newFilename, file_get_contents($file));
$input['default_picture_url'] = '/uploads/'.$newFilename;
}
}
/*My filesystems.php*/
'uploads' => [
'driver' => 'local',
'root' => public_path().'/uploads'
],
并且我已经将php.ini
upload_tmp_dir
修改为C:\Windows\Temp
或C:/Windows/Temp
谁能帮我解决这个问题!
我在 PHP 7.3 和 IIS 中也遇到了同样的问题。我将在下面解释我是如何解决这个问题的。
第 1 步:我已授予 C:\Windows\Temp.
完全权限(任何用户都可以访问)
第 2 步:编辑 php.ini 文件 upload_tmp_dir = "C:\Windows\Temp"
、sys_temp_dir = "C:\Windows\Temp"
第 3 步:在 php.ini 中启用扩展程序 extension=fileinfo
并重新启动服务器。
最初我使用 C:\Windows\Temp
后来我创建了单独的临时文件夹并使用了该文件夹 C:\inetpub\www\temp
。
我一整天都在面对这个问题,我已经看到了这个问题(
我已经编辑了我的 C:\Windows\Temp
完全控制权限 IISR_IUSERS
我在 windows 服务器 2008 R2 上的 IIS 7 上使用 NTS PHP 版本。
在我的 Laravel 代码上,我正在这样做:
$input['picture_url'] = $request->file($fileInForm)->store('uploads');
在我的开发环境中,它是一个 Macosx 我这样做是为了将图像保存到我这样配置的上传文件夹中:
/*My code to upload imagem on MACOSX dev enviroment*/
$input = array();
$fileInForm = 'picture_url';
if ($request->hasFile($fileInForm)) {
$file = $request->file($fileInForm);
if ($file->isValid())
{
var_dump($request->file('default_picture_url')->path());
die();
// Filename is hashed filename + part of timestamp
$hashedName = hash_file('md5', $file->pathName());
//$timestamp = (microtime() * 1000000);
$newFilename = $hashedName . '.' . $file->getClientOriginalExtension();
Storage::disk('uploads')->put($newFilename, file_get_contents($file));
$input['default_picture_url'] = '/uploads/'.$newFilename;
}
}
/*My filesystems.php*/
'uploads' => [
'driver' => 'local',
'root' => public_path().'/uploads'
],
并且我已经将php.ini
upload_tmp_dir
修改为C:\Windows\Temp
或C:/Windows/Temp
谁能帮我解决这个问题!
我在 PHP 7.3 和 IIS 中也遇到了同样的问题。我将在下面解释我是如何解决这个问题的。
第 1 步:我已授予 C:\Windows\Temp.
完全权限(任何用户都可以访问)第 2 步:编辑 php.ini 文件 upload_tmp_dir = "C:\Windows\Temp"
、sys_temp_dir = "C:\Windows\Temp"
第 3 步:在 php.ini 中启用扩展程序 extension=fileinfo
并重新启动服务器。
最初我使用 C:\Windows\Temp
后来我创建了单独的临时文件夹并使用了该文件夹 C:\inetpub\www\temp
。