laravel 5.4图片404错误

时间:2018-01-27 13:36:27

标签: http-status-code-404 laravel-5.4

我正在将图片上传到我的应用程序 storage / app / public / avatars 目录。文件正在上传,并在此文件夹中 - 我已经检查过了。只要我在本地电脑上,加载页面就会显示图像。然后我将项目移动到共享主机。从那以后,图像没有加载。从chrome控制台网络选项卡我可以看到laravel抛出404错误的图像。

以下是我的尝试:

  1. 在远程计算机上,我将公共文件夹中的符号链接重新创建为指向存储/应用/公共文件夹的存储
  2. 尝试将图片src直接复制并粘贴到浏览器中 - 在RouteCollection.php中获取 NotFoundException
  3. 清除视图,缓存,配置缓存
  4. 花了5个小时试图搞清楚。在本地电脑上正常工作。只是不在共享主机上。

    拼命寻求帮助:(

1 个答案:

答案 0 :(得分:0)

经过4个小时的夜晚睡眠后,我再次开始发现问题。非常新手的错误,但可以很难找到。

这是什么。我将laravel项目文件夹上传到共享主机。假设我的项目名称是 myproject 。此文件夹与 public_html 文件夹位于同一级别。然后我将 myproject / public 文件夹的内容复制到 public_html 文件夹中。

如您所知,您应该在公共目录中创建符号链接,链接应指向 storage / app / public 目录(如果您使用的是 public < / em>用于文件存储的磁盘驱动程序)。我确实在 public 文件夹中创建了符号链接,但是在错误的 public 文件夹中。由于我将公共文件夹的内容复制到 public_html 文件夹,我应该在 public_html 文件夹中创建符号链接,而不是在 > myproject / public 文件夹!!

----public_html
    ---css
    ---js
    ---(other files etc. etc)
    ---storage  <= this is where the symbolic link should be
----myproject
    ---public
        ---css
        ---js
        ---(other files etc. etc)
        ---storage <= not here!!

非常愚蠢。

btw,下面是如何将本地laravel项目转移到共享主机的教程:

guide to deploy laravel 5 app on shared hosting