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

时间:2018-02-06 02:17:10

标签: laravel laravel-5 cpanel laravel-5.5

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

2 个答案:

答案 0 :(得分:0)

你说你之前有过这样的工作。 那是在同一台服务器上......直播吗?

如果是这样,那么这可能是服务器问题而不一定是laravel问题吗? 也许您应该向您的主人寻求帮助并澄清有哪些变化?

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

  • .cpanel /

  • 应用程序/

  • 等/
  • 自举/
  • 邮件/
  • 的public_html /
    • 来自您的laravel /public目录
    • 的内容
  • 供应商/

...等

您还需要进入/public_html并修改index.php内容:

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

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

并确保它指向您的引导程序文件夹的正确位置..如果您按照上面的结构,那么它确定。

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

答案 1 :(得分:0)

在此答案的帮助下:https://stackoverflow.com/a/50261573/3475551 我设法让laravel将上传的文件保存到服务器的公共目录中,而不是app / public中。 像这样编辑app/Providers/AppServiceProvider.php

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

希望这会有所帮助。