【问题标题】:laravel 5.4 image 404 errorlaravel 5.4 图像 404 错误
【发布时间】:2018-07-06 16:15:57
【问题描述】:
我正在将图像上传到我的应用程序 storage/app/public/avatars 目录。文件正在上传并且在这个文件夹中 - 我已经检查过了。只要我在本地电脑上,加载页面就会显示图像。然后我将项目移至共享主机。从那时起,图像没有加载。从 chrome 控制台网络选项卡中,我可以看到 laravel 抛出 404 错误的图像。
这是我尝试过的:
- 在远程计算机上,我将 public 文件夹中的符号链接重新创建为 storage,它指向 storage/app/public 文件夹.
- 试图将图片src直接复制粘贴到浏览器中——RouteCollection.php中出现NotFoundException
- 清除视图、缓存、配置缓存
花了 5 个小时试图弄清楚。在本地电脑上运行良好。只是不在共享主机上。
拼命寻求帮助:(
【问题讨论】:
标签:
http-status-code-404
laravel-5.4
【解决方案1】:
经过 4 个小时的糟糕睡眠后,我再次开始并发现了问题。非常新手的错误,但很难找到。
就是这样。我将我的 laravel 项目文件夹上传到共享主机。假设我的项目名称是 myproject。此文件夹与 public_html 文件夹处于同一级别。然后我将 myproject/public 文件夹的内容复制到 public_html 文件夹。
如您所知,您应该在公共目录中创建符号链接,并且该链接应指向 storage/app/public 目录(如果您使用的是 public 文件存储的磁盘驱动程序)。我确实在 public 文件夹中创建了符号链接,但是在错误的 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!!
我太傻了。
顺便说一句,下面是如何将本地 laravel 项目转移到共享主机的教程:
guide to deploy laravel 5 app on shared hosting