【发布时间】:2016-11-26 03:32:26
【问题描述】:
我正在使用 lftp 通过 Travis CI 部署网站。在部署之前有一个构建过程,因此存在一个构建目录并推送到 ftp 服务器的根目录。
lftp $FTP_URL -e "glob -d mirror build . --reverse --delete-first --parallel=10 && exit"
它工作得很好,但我不喜欢因为我的网站上缺少文件而出现停机/临时 PHP 解析错误。解决该问题的最佳方法是什么?
我的第一种方法是设置临时目录的选项,但 lftp 手册页说只有临时文件的选项。我仍然尝试了该选项,但没有帮助。
我的第二种方法是使用“镜像构建临时”来使用临时文件夹,然后用它替换根目录。这里的问题是,我无法在删除 rm -rf * 等旧文件和文件夹时排除临时文件夹。
【问题讨论】:
-
您尝试过 xfer:use-temp-file 设置吗?
-
你有没有访问web根目录的父目录?
-
临时文件设置不适用于目录。我无法访问父目录,我的想法是为每个 cronjob 单独访问 - 授予对父目录的访问权限可能会解决我的问题,但 ftp 用户确实可以访问其他项目。
标签: deployment lftp