在服务器上上传文件,Laravel
Upload files on server, Laravel
我的 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';
});
}
重要提示:当我保存寄存器时,它起作用了,我可以在数据库中看到文件名,但不能将文件保存在文件夹中。
谢谢,但是 putFile 没用。
我终于可以修复错误了。我不知道为什么要创建一个文件夹并将文件保存在 Laravel 文件夹中。所以,我用路由手动替换了“public_path”,只是一个字符串。现在它保存在正确的文件夹中。
我的 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';
});
}
重要提示:当我保存寄存器时,它起作用了,我可以在数据库中看到文件名,但不能将文件保存在文件夹中。
谢谢,但是 putFile 没用。
我终于可以修复错误了。我不知道为什么要创建一个文件夹并将文件保存在 Laravel 文件夹中。所以,我用路由手动替换了“public_path”,只是一个字符串。现在它保存在正确的文件夹中。