首页
/ 在transfer.sh中正确配置文件自动清理周期

在transfer.sh中正确配置文件自动清理周期

2025-05-14 22:44:31作者:宣利权Counsellor

transfer.sh是一个开源的临时文件分享服务,它允许用户上传文件并设置自动清理时间。在实际使用中,许多开发者会遇到一个常见问题:虽然设置了PURGE_DAYS环境变量,但网站界面仍然显示"Files stored forever"(文件永久保存)。

问题根源分析

这个问题的根本原因在于配置不完整。transfer.sh需要两个关键环境变量协同工作才能实现文件自动清理功能:

  1. PURGE_DAYS:定义文件保存的天数
  2. PURGE_INTERVAL:定义清理任务的执行频率

完整解决方案

要正确配置文件的自动清理功能,必须同时设置这两个环境变量。以下是推荐的配置方式:

PURGE_DAYS=7
PURGE_INTERVAL=24h

这种配置表示:

  • 上传的文件将在7天后自动删除
  • 系统每24小时执行一次清理任务,检查并删除过期文件

技术实现原理

transfer.sh的清理机制基于以下工作流程:

  1. 文件上传时,系统会记录上传时间戳
  2. 根据PURGE_DAYS设置计算文件的过期时间
  3. PURGE_INTERVAL定时器触发清理任务
  4. 清理任务检查所有文件,删除超过PURGE_DAYS设置的文件

最佳实践建议

  1. 对于生产环境,建议将PURGE_INTERVAL设置为24小时或更短,以确保及时清理过期文件
  2. 可以根据业务需求调整PURGE_DAYS,但要注意与存储空间的平衡
  3. 在Docker部署时,确保环境变量正确传递给容器

通过正确配置这两个参数,transfer.sh将能够按照预期自动清理过期文件,并在界面上正确显示文件保存期限。

登录后查看全文
热门项目推荐
相关项目推荐