将图像上传到 Public_html 文件而不是 public 项目文件

Uploading images to Public_html file rather than public project file

如果这个工作正常,但刚刚在服务器上更新了我的网站,它似乎使我所有上传的文件都转到了我项目中的 public 文件夹,而不是 public_html。知道我必须上传哪个文件和修复吗?

你说你以前用过它。 是在同一个服务器上吗...直播?

如果是这样,那可能是服务器问题而不一定是 laravel 问题? 或许您应该向您的房东寻求帮助并说明发生了什么变化?

如果您确信这是关于您所做的更改...那么愿意向我们展示吗? 理想情况下,如果服务器是 cpanel,您将希望将所有 laravel 文件直接上传到您的家中...然后将所有 /public 文件夹内容上传到 public_html 它看起来像这样:

  • .cpanel/

  • 应用/

  • 等等/
  • bootstrap/
  • 邮件/
  • public_html/
    • 您的 laravel /public 目录中的内容
  • 供应商/

...等等

您还需要进入 /public_html 并编辑 index.php 内容:

require __DIR__.’/../vendor/autoload.php’;

$app = require_once __DIR__.’/../bootstrap/app.php’;

并确保它指向您的 bootstrap 文件夹的正确位置..如果您遵循上述结构,则没问题。

最后,确认你的PHP确实>=PHP7.0

在这个答案的帮助下: 我设法让 laravel 将上传的文件保存到我的服务器 public 目录而不是 app/public。 像这样编辑 app/Providers/AppServiceProvider.php

public function register()
{
    $this->app->bind('path.public', function() {
        return realpath(base_path().'/../../public_html');
    });
}

希望对您有所帮助。