首页 > 解决方案 > Laravel/Homestead/Windows 上的符号链接问题

问题描述

我在显示存储文件夹中存储的图像时遇到问题。目前,所有文件上传都配置为最终位于以下文件夹中:

存储\应用\公共

我正在尝试按如下方式访问它们:

http://homestead.vaniloapp-demo/storage/6/testimage.jpg

但是,这会导致 404。

如果我运行:php artisan storage:link我收到以下错误消息:

“‘public/storage’目录已经存在。”

我已经从其他各种线程中捆绑了一堆不同的提示和技巧,包括使用取消链接公用文件夹unlink storage,然后尝试使用手动再次链接它,ln -s ../storage/app/public storage但这会导致以下错误:

“未能创建符号链接‘存储’:协议错误”

已尝试使用 Sudo,已绑定以管理员身份启动 CMD。

我正在为 Windows 运行 Homestead 和 Vagrant。

提前致谢!

米卡

标签: laravelvagrantsymlinkhomestead

解决方案


这是我想出的最佳步骤

  1. 取消当前 Vagrant 实例上的存储链接
  2. 停止流浪vagrant halt
  3. 以管理员身份运行 CMD/终端(右键单击 > 以管理员身份运行)
  4. 转到您的 Homestead 文件夹并开始 vagrantvagrant up --provision
  5. SSH 进入 vagrant vagrant ssh,同时仍在同一个 CMD/终端中
  6. CD 进入你的 Laravel 目录并运行php artisan storage:link

我见过有人在 CMD 管理模式下没有启动 vagrant box 时遇到问题。

希望这可以帮助。


推荐阅读