Laravel部署到共享主机不显示图像

时间:2019-10-29 13:12:29

标签: laravel

我将laravel应用程序部署到共享主机(hostinger)。除了未显示的图像以外,其他所有东西都工作正常。

我已经用我的public_html文件夹创建了存储文件夹的符号链接。上传的文件进入公用文件夹,但是当我链接图像时,它们仍然没有显示。

由于无法访问公用文件夹,因此创建了指向public_html的符号链接。我需要这方面的帮助

我需要在浏览器上显示图像

2 个答案:

答案 0 :(得分:0)

在默认的Laravel部署中,符号链接在public文件夹中创建为storage,并链接到../storage/app/public

为了调试您的问题,请查看您浏览器的开发人员工具,以查找是404还是403问题(甚至是另一个问题)。

请检查正确的权限。否则,您可以将物理存储路径更改为public文件夹中的内容。这样避免了创建符号链接的要求。请记住,例如,通过.htaccess保护非公共存储。

答案 1 :(得分:0)

如果公共资源目录不是根文件夹中的public目录,则必须转到该目录。在您的情况下,公共资产目录为public_html。因此,请从根文件夹将路径绑定到该路径。

class AppServiceProvider extends ServiceProvider
{

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        if (App::environment('prod')) {
            $this->app->bind('path.public', function() {
                return base_path('../../public_html');
            });
        }
    }
}