大家好!在服务器端执行 PHP artisan storage:link 还是 404 错误!

配置环境:ubantu 18.04 + nginx + php7.2 + mysql + laravel5.5
将图片上传至:项目路径/storage/app/public
使用php artisan storage:link
在浏览器中访问:主机/storage/图片名,提示404。

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 18

确认public下有storage的链接;在storage下没有多余的二级目录;文件名称是否准确

4年前 评论

@松园 您说的都确认过了,有链接,无其他目录,文件名肯定没问题。还是不行。

4年前 评论

有没有可能是nginx 的配置问题?

4年前 评论
Elijah_Wang

权限问题

$ sudo chown -R www:www your_project_directory
4年前 评论
hareluya

nginx问题+1

4年前 评论

file
建立成功是这样。向public/storage中复制021.jpg文件在storage/app/public中也会同样出现一个021.jpj文件。
注意要限问题

4年前 评论

可能是info.php 没有配置正确,之前我也遇到过了,有一个拓展没有使能。

4年前 评论

首先感谢楼上的朋友回答我的问题,但是我们还是没搞定,我们自己估计是 nginx 问题,但是还是不知道该怎么解决,还请大神给出 nginx 的配置,跪求!

4年前 评论

php artisan storage:link 生成的目录已经软连接了
如果图片的绝对路径是 /storage/app/public/021.jpg,那么你应该直接访问 http://你的域名/021.jpg

4年前 评论

删掉public/storage,再重新执行一次软连接命令,如果你之前是提前创建了public/storage目录的话

4年前 评论

敢问各位大佬如何解决的

4年前 评论

php artisan storage:link 也弄了,之个啥情况,搜了半天没找到怎么解决的 php artisan serve 下可以访问

4年前 评论

请问题主解决问题了吗?没有的话可以看一下 ./storage 目录权限是否满足你的需求。正常情况下,要读写文件,所以要 rw 权限,要读取目录中的文件,所以要 x 权限。所以建立权限给足:sudo chomd -R 777 ./storage

4年前 评论
OneStep 3年前

请问题主解决了吗? 跪求

3年前 评论

这个问题我在部署 SPA 和 Laravel API 时也遇到了,给你个参考方案试试看行不行: 因为我的 SPA 路由都是 / 下面的,所以所以 Nginx 配置如下:

# SPA
location / {
    index index.html;
    root /web/sites/php/ecms/spa;
    try_files $uri $uri/ /index.html;
}

# storage
location /storage {
    alias /web/sites/php/ecms/api/public/storage;
}

# 后端 API
location /api {
    index index.php;
    root /web/sites/php/ecms/api/public;
    try_files $uri $uri/ /index.php?$query_string;
}

/storage 块中使用 alias 来指向 public/storage。 如果还是不行的话,建议你贴出你的配置。

3年前 评论
GeorgeKing (作者) 3年前

ln -s 不就行了嘛,

3年前 评论

查看storage目录的所有者及权限,一般为权限问题,更改权限后如不生效删除目录重新生成在查看权限,试着将错误复现,便于查找问题

3年前 评论

file

file 第一张是在服务器上点击软链接的目录,第二张是在windows上点击软链接的目录, 在上传文件时报错 'The stream or file "/www/wwwroot/xxxx/storage/logs/laravel-2020-08-19.log" could not be opened in append mode: failed to open stream: Permission denied' 请问是什么问题?

3年前 评论
fmujie (作者) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!