Storage 使用中的一个问题
在做上传图片的时候遇到的一个问题:
首先使用 request
接收到图片然后保存
保存在了 storage/app/public
文件夹下
然后根据文档想要公开访问该文件夹,需要创建一个符号链接
然后运行 php artisan storage:link
创建了符号链接
此时 public
文件夹下多了一个 storage
文件夹
里边的文件就是 storage/app/public
里的文件
此时视图文件访问 public/storage
里的文件访问不到,提示找不到路由
------------- 解决:
一朋友说,php 在 windows 下不能读取快捷方式(也就是符号链接),而在 linux 下可以
也就是说虽然在本地不能读取,但是传到服务器上就可以,哪天测一下试试
------------- 解决:(2019-1-21)
这个问题最后还是被解决了,方法很简单,使用管理员模式打开系统自带的命令行cmd,然后登陆虚拟机执行即可,不知道为什么,很多这种疑难杂症换一个命令行就可以解决,可能系统自带的cmd权限还是要高一点。
今天突然想起来这个帖子,遂更新一下
长路漫漫,唯键盘作伴。:octocat: 我是猫哥,欢迎关注我的 「个人博客 」和微信公众号「前端猫哥」 :new_moon_with_face:
@Summer
这么坑爹,那自己还要搭建个虚拟机,安装个linux系统
在homestead下不能创建软链

以管理员方式打开git bash,然后
vagrant up
,vagrant ssh
之后,仍旧不能创建。查询到一种说法,虚拟机从安全角度禁止了软链的创建。
但是目前为止并没有找到在homestead下创建软链的办法……stackoverflow上的答案都是使用管理员权限打开虚拟机,可是我并没有用,有人在homestead下创建过软链吗?
@泽 修改 Vagrantfile,添加这个,然后运行 vagrant up 的那个命令行也要用管理员运行。
@oustn 成功了,太感谢你了!WOW。我之前是用了一个折衷的办法,就是在homestead.yaml里写storage软链
用了你的办法,直接可以创建了
大兄弟, 你的问题解决了没。 我也遇到这个问题了~~求解答@oustn @泽
@菠菜 看楼上的回复,在 linux 里创建软连接之后就可以了,在windows下是不行的
我直接换成了 intervention/image 这个扩展,用这个扩展来保存图片,直接保存在 public 下,还可以处理图片,感觉还挺方便的
@SadCreeper 在mac下创建的软连接是不是也不可以啊
@SadCreeper 搞了一晚上了。这个软连接的问题 。恼火啊
@菠菜 如果你位置没问题,就是访问不到的话,可能是软连接没成功,可能是mac系统限制了,我没用过mac不清楚
位置没有问题的。 应该是限制了, 我试试用你说的那个扩展, 谢谢啦大兄弟@SadCreeper
@菠菜 我有一篇文档,关于安装intervention/image 扩展的,你可以参考一下 http://123.207.171.47/article/10
路径错了 是
storage
不是public/storage
其实通过request store后会返回一个path的@泽 这是laravel 5.? 5.1可以吗
@北冥 我是5.2之后的版本,5.1没有试过
WINDOWS 改 NGINX 或者 APACHE 虚拟目录方便点
我用命令方式创建了软链接,windows服务器下面可以访问,但是手动再windows下面创建快捷方式,就不能访问,为啥?
@oustn 谢谢分享,按照你的方法直接可以创建了。