Piwigo保留原始文件名的实现方案

laoluo
laoluo
laoluo
管理员
32
文章
0
粉丝
教程评论23阅读模式

Piwigo 网页上传默认会将文件名改为随机字符串(如20260613-xxxxxx.jpg),无官方开关直接关闭;但可通过FTP 同步 + 本地配置 + 插件实现 “保留原始文件名” 的效果。

一、核心方案:FTP 上传 + 同步(最稳妥,100% 保留原名)

  1. 准备文件:本地整理图片,文件名仅含字母、数字、-、_、.,无空格 / 中文 / 特殊符号。
  2. FTP 上传:用 FTP 工具将图片文件夹上传到 Piwigo 站点的galleries/目录(而非upload/)。
  3. 执行同步
    • 后台进入 工具 → 同步
    • 选择 目录 + 文件,勾选 同步元数据,取消 仅模拟
    • 点击 开始同步,完成后图片完全保留原名

二、网页上传妥协方案(保留原名显示 / 下载,存储仍随机)

1. 安装配置 LocalFiles Editor 插件

  • 后台 → 插件 → 搜索安装 LocalFiles Editor 并启用。
  • 进入插件 → 本地配置,添加以下代码并保存:
<?php
// 启用原始文件名URL(如i.php?/upload/原图名.jpg)
$conf['picture_url_style']='id-file';
// 允许中文文件名(可选)
$conf['sync_chars_regex']='/^[a-zA-Z0-9-_.\x00-\xff]+$/';
?>

2. 效果说明

  • 数据库:原始文件名存在piwigo_images.file字段。
  • 前台 URL:显示为/i.php?/upload/原图名.jpg(伪静态,实际文件仍随机)。
  • 下载按钮:点击直接下载原始文件名的图片。
  • 物理存储upload/目录下文件仍为随机名,无法改变

三、常见问题与限制

  1. 安全机制:随机命名是为防止文件名猜测访问私有图片,关闭会降低安全性。
  2. 中文文件名:需同步修改sync_chars_regex正则,否则同步会失败。
  3. 重复文件名:同目录下同名文件会被覆盖,FTP 同步会报错。
  4. 插件兼容性LocalFiles Editor需适配 Piwigo 版本,新版可能需调整代码。

四、总结建议

  • 长期稳定:优先用 FTP + 同步,100% 保留原名,无兼容性问题。
  • 临时网页上传:用 LocalFiles Editor 配置,实现 URL / 下载显示原名,存储仍随机。
  • 不建议:手动改代码关闭随机命名,易引发升级冲突与安全漏洞。

 
laoluo
  • 本文由 laoluo 发表于2026年6月13日 06:48:48
  • 转载请务必保留本文链接:https://www.mydata-api.com/tutorials/28.html
匿名

发表评论

匿名网友
确定

拖动滑块以完成验证