当前位置: 首页 > 知识库问答 >
问题:

如何上传图像到公共文件夹在共享主机laravel 5

商茂勋
2023-03-14

我将我的网站从本地主机移动到共享主机这一切都很好,但当我将存储的文件直接上传到public\u html时,我需要:类似于public\u html/storage/我尝试使用类似以下内容:

symlink('/home/abdoweb/bmcelarave/storage/app/public', '/bmce/public_html/storage')

问题仍然存在。

我的控制器:

    public function addcategory(Request $request){

    $title = $request->input('category_name');
    $image = $request->file('category-image');
        $name = $image->getClientOriginalName();
        $image->move(storage_path().'/app/public/category',$name);
        $data[] = $name;

    $query=  DB::table('category')->insert(
        [
            'title' => $title,
            'image' => $name,
            "created_at" => Carbon::now()
        ]);
        if($query){
            return redirect('categories');
        }
}

我的文件夹:

首页/abdoweb/{bmcelaravel}

核心laravel:

首页/{bmce}

非常感谢。

共有2个答案

司空丰
2023-03-14

首先,这些东西的推荐位置是留在公共路径上,而不是创建一个新的路径,除非有实际的原因。你真的检查了符号链接的创建吗?

Laravel有一个自己的命令,用于创建从storage/app/publicpublic/storage的符号链接(随后将生成存储文件夹):

php artisan存储:链接

但是如果你想创建默认的符号链接,你应该为自己创建一个,就像你已经做的那样。

这是符号链接模式:

ln-s目标源代码(填写您的目标和源路径)

因此,如果您实际上从请求中获得了正确的文件,则此代码应该工作:

Storage::putFile($name, $request->file('category-image'));

有关更多详细信息,请查看文件系统文档

卓正业
2023-03-14

您可以使用存储驱动程序:

在配置/文件系统内部。php:

'disks' => [
   'public' => [
       'driver' => 'local',
       'root'   => public_path() . '/uploads',
       'url' => env('APP_URL').'/public',
       'visibility' => 'public',
    ]
]

//Now you can move  the file to storage like : 

Storage::disk('public')->putFile('category', $request->file('category-image'));
 类似资料:
  • 我希望能够从开发和生产的前端直接将图像上传到ReactJS公共文件夹。对于生产,我使用带有nodejs后端的heroku应用程序。 从我在网上找到的所有使用ReactJS上传图像的教程中,他们都使用服务器端将图像上传到云,但我想知道是否有可能像Lavarel那样将图像上传到公共文件夹,这样做是否有任何缺点?

  • 我有一个经过验证的谷歌客户端,我想列出其他人公用文件夹中的文件(我认为共享或不共享的文件夹是不相关的,因为它是公用的) 这是我在NodeJS中的代码 注意:文档中没有“folderId”选项:https://developers.google.com/drive/api/v3/reference/files/list-只是一个drivid选项 虽然我将corpa设置为“drive”和drive I

  • 问题内容: 我有这些东西: 文件http://api.odtu.lu/composer.phar http://api.odtu.lu/phpinfo.php FTP访问 面板 FreeBSD上的Cron职位 PHP,Perl,CGI-BIN,Python,Curl。 如何安装Composer?(我的目的是安装Restler) 编辑:我没有SSH访问。 问题答案: 它取决于主机,但是您可能根本无法

  • PHP 非常流行,很少有服务器没有安装 PHP 的,因而有很多共享主机,不过需要注意服务器上的 PHP 是否是最新 版本。共享主机允许多个开发者把自己的网站部署在同一台服务器上面,这样的好处是费用非常便宜,坏处是你不知道将和哪些 网站共享主机,因此需要仔细考虑机器负载和安全问题。如果项目预算允许的话,避免使用共享主机是上策。

  • 我有一个docker容器运行良好。它在目录中生成一些文件。我需要这些文件做些测试。但当此容器停止时,所有内容都将被删除。所以我需要将这个文件从容器复制到主机。 我有一个python应用程序运行在生成文件的容器中。我需要一些命令或任何方式,通过这些命令,我可以在容器停止时将发送到结尾的主机。 为此,我可以使用命令,我尝试了它,但它给我一个错误,因为没有安装docker。 如何将文件从容器共享到主机?

  • 我上传我的Laravel应用程序到C面板,我的公共内容是在public_html,我改变index.php公共到这个: 和其他文件在主根命名为热电偶 一切正常,但当我想上传一张图片,而不是上传到public_html时,一个带有public name的文件将在public_html之外的thermotajhiz文件中创建 我怎样才能解决这个问题? 我正在使用此插件上载文件: 文件管理器