是否可以将 public 路径从当前版本复制到 laravel envoyer 中的下一个版本?
is it possible to copy public path from current release into next release in laravel envoyer?
我有一个使用 envoyer 进行部署的站点。
在我的网站上,用户可以保存 images/avatars/etc。这些图像保存到 laravel 的 public 路径。 /public/uploads/
问题在于,当我部署更新时,composer 不会将新文件保存在新版本文件夹的 /public/uploads
中。
是否要编写一个部署脚本,每次我推送新部署时,都会将当前版本 /public/uploads 中的所有内容复制到新版本中?
不要将它们存储在 public/uploads
中,将它们存储在 storage/uploads
中。将 storage/uploads
符号链接到 /public/uploads
并将 storage/uploads
从项目中完全移出到它自己的目录中。然后符号链接 /storage/uploads
到你自己的 /storage/uploads
,像这样:
ln -s /home/forge/storage/example.com/uploads /home/forge/example.com/storage/uploads
ln -s /home/forge/example.com/storage/uploads /home/forge/example.com/public/uploads
确保位于 /home/forge/storage/example.com/uploads
的新目录的所有权与您对 /home/forge/example.com
的所有权相匹配。
这将允许在设备上持久存储。确保将 symlinks
添加到部分部署过程中,这样您就不会再在每次部署时丢失上传内容。
我有一个使用 envoyer 进行部署的站点。
在我的网站上,用户可以保存 images/avatars/etc。这些图像保存到 laravel 的 public 路径。 /public/uploads/
问题在于,当我部署更新时,composer 不会将新文件保存在新版本文件夹的 /public/uploads
中。
是否要编写一个部署脚本,每次我推送新部署时,都会将当前版本 /public/uploads 中的所有内容复制到新版本中?
不要将它们存储在 public/uploads
中,将它们存储在 storage/uploads
中。将 storage/uploads
符号链接到 /public/uploads
并将 storage/uploads
从项目中完全移出到它自己的目录中。然后符号链接 /storage/uploads
到你自己的 /storage/uploads
,像这样:
ln -s /home/forge/storage/example.com/uploads /home/forge/example.com/storage/uploads
ln -s /home/forge/example.com/storage/uploads /home/forge/example.com/public/uploads
确保位于 /home/forge/storage/example.com/uploads
的新目录的所有权与您对 /home/forge/example.com
的所有权相匹配。
这将允许在设备上持久存储。确保将 symlinks
添加到部分部署过程中,这样您就不会再在每次部署时丢失上传内容。