常见问题

MT Photos收费吗?

MT Photos 服务端收费,支持试用1个月;

试用结束后,服务端将停止扫描新增的文件,App也将停止备份新的照片、视频;

苹果、安卓、鸿蒙App免费使用,下载地址请查看App下载

服务端订阅可以换设备吗?

可以,在新的设备上安装好服务端后,重新绑定下激活码即可将订阅转到新设备上。

如需数据备份与迁移,请查看 如何备份MT Photos的数据、文件?

支持多用户使用吗?

支持,可以在【用户管理】中添加、管理用户;

支持哪些类型的图片、视频

支持图片的格式有:JPEG, HEIC, HEIF, HIF, PNG, GIF, BMP, TIFF, PSD, AVIF, WEBP

支持RAW照片的格式有:3FR, ARW, CR2, CR3, CRW, DCR, DCRAW,DNG, ERF, IIQ, K25, KDC, MEF, MRW, NEF, NRW, ORF, PEF, RAF, RAW, RMF, RW2, SR2, SRF, X3F

如果一个文件夹下有同名的jpg+raw格式文件,会合并显示

支持视频的格式有:MOV, MP4, MPEG, 3GP, M4V, WEBM, MKV, WMV, AVI, RM, RMVB, FLV, OGG, M2T, M2TS, MTS, VOB (其中MOV和MP4文件在App和网页支持播放,其他的格式需要生成转码文件或者调用外部播放器播放)

外网访问的安全性

访问方式

如果需要在局域网以外访问相册,可以使用以下方式访问:

  • 1、有公网ip的情况下,使用 DDNS + 路由器的端口映射 (强烈建议申请ssl证书,然后开启https访问)
    • 开启HTTPS访问的方法
    • 另外可以开启nginx的HTTP基本认证(Basic access authentication)来验证访问来源,网页和App中都支持HTTP基本认证;
      • 开启HTTP基本认证后,任何访问来源都需要输入这个认证的账号密码,可以拦住一切非法访问,比如各种爬虫、漏洞扫描工具的访问;如果相册不需要对外分享链接访问建议开启;
  • 2、如果没有公网IP,那么就需要使用内网穿透(比如:frp、Zerotier等)或者异地组网(WireGuard等) 来访问内网的服务;

外网访问安全性分析表:从“夯”到“拉”

安全 技术方案 核心特征 风险/评价
异地组网 服务不暴露在公网,通过加密隧道(如 Tailscale/WireGuard)访问。 极高:隐身模式,只有授权设备能连接,防御维度最全。
顶级 HTTPS + Basic Auth 传输层加密 + 强制性的 Web 访问身份核验。 较高:即便 URL 泄露,没有HTTP基本认证的账号密码也无法看到内容,防扫描。
NPC HTTPS 访问 仅通过 SSL/TLS 证书加密传输路径。 中等:防止了数据被窃听,但服务入口完全暴露,全看应用自身抗打能力。
HTTP 访问 全明文传输,无任何加密或防护。 极低:在公网上等同于“裸奔”,极易被中间人截获账号密码或被运营商劫持。

账号登录保护

针对登录接口防爆破的保护,登录接口默认一分钟中只能请求10次,超过后需要等待1分钟后再试; 如果需要提升这个次数上限,可以在容器的环境变量中配置LOGIN_RPM,比如 -e LOGIN_RPM=100,将一分钟内的请求上限提升到100次;

二步验证

另外还可以开启二步验证,进一步增加账号登录的安全性;

  • 网页端点击 右上角的用户名 -> 二步验证 中开启
  • App 点击 设置 -> 二步验证 中开启

登录日志

打开容器的日志,或者网页中打开系统配置底部的系统日志,可以看到用户的登录记录,比如:

User [root] logged in successfully, IP: 192.168.1.225, Time: Tue Nov 18 2025 10:31:20 GMT+0800 (中国标准时间)

如果配置了反向代理,请确认配置中有这些配置; 如果未添加,显示的IP为变成nginx所在服务器的ip

proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

文件存储的安全性

3-2-1 备份原则:数据安全的“黄金法则”

3-2-1 原则 是确保数据永不丢失的核心策略,具体包含:

  • 3 份副本: 除了原始数据,至少保留 2 份备份。

  • 2 种介质: 将备份存储在不同的设备上(如:硬盘 + NAS 或 U盘)。

  • 1 份异地: 必须有 1 份存放在物理上的不同地点(如:云存储或另一处住所)。

为什么它至关重要?

单一的备份无法应对所有风险。电脑坏了有备份,但如果发生火灾、盗窃或勒索软件攻击,本地的所有设备可能全军覆没。该原则通过冗余和空间隔离,对冲了硬件故障和灾难性意外,是你文件安全的最后一道防线。

RAID 不是备份

RAID 只能防御单块或部分硬盘的物理故障。如果发生误删除、勒索病毒加密、灾难性意外,RAID 上的数据会同时损坏。

功能更新计划

  • 相册增加更多的自动添加、排除规则;
  • 文件夹收藏功能
  • iOS App备份增加相册选择
  • App备份增加自动同步相册
  • 增加API key管理
  • 增加选中照片后堆叠显示

已支持的功能

  • 时间线模式查看照片
  • 文件夹视图查看照片
  • 使用相册收藏夹来整理照片
  • 基于人脸识别自动生成人物相册
  • 基于照片、视频exif中的GPS信息自动生成地点相册
  • 基于内容识别自动生成场景相册
  • 基于照片类型自动生成分类相册(屏幕截图、自拍照、视频、动态照片、RAW图片)
  • 照片、相册的分享功能
  • 支持动态照片的备份、展示(比如:iOS、安卓、鸿蒙、WindowsPhone 各平台的动态照片格式)
  • App备份手机相册(支持选择备份位置、文件夹生成规则、按拍摄日期重命名等)
  • 管理照片的标签备注评分
  • 多用户管理
  • 基于文件MD5的重复文件检查及清理
  • App支持在后台备份照片
  • App、网页增加对 HTTP基本认证 (Basic Authorization)的支持
  • App、网页增加对 STUN内网穿透 访问的支持
  • App、网页支持简体中文、繁体中文、英文3种语言的选择
  • 登录增加二步验证
  • 图片文字识别
  • 基于OpenAI CLIP模型的以文搜图
  • 浏览器端执行人脸识别、场景识别任务
  • 管理员整理人物相册
  • 网页批量下载照片
  • 批量修改图片的GPS信息
  • 批量或单个修改拍摄日期
  • App隐私锁
  • 相册支持按人物、标签、文件夹创建及自动更新
  • TV端App
  • 那年今日功能
  • 幻灯片播放功能
  • 搜索增加更丰富的查询条件
  • 隐藏图片功能
  • 在相册内直接上传文件
  • 根据图片相似度清理重复文件
  • 相册的分享链接中支持上传文件
  • 鸿蒙版本App
  • 图片旋转功能
  • 按年月分文件夹整理已上传的文件
  • 管理员增加整理人物相册,合并人物、设置默认名称

什么样的照片会被识别为动态照片?

当一个文件夹下有同名的图片和视频时, 比如 IMG_001.HEIC 和 IMG_001.MOV ,会合并显示为动态照片

图片可以是JPG、HEIC、HEIF格式,视频可以是MP4、MOV格式

Docker容器启动后,无法访问页面

请查看容器的日志,确认容器内/config或者/upload是否有写入权限;

更多内容查看 常见错误及解决方法

无法访问授权服务器

请检查容器内是否能访问外网,一般是DNS解析错误导致的;

解决方法查看 DNS解析错误

App开启备份后,不备份照片

请检查开启备份时,是否选了【仅备份新照片】

App备份是如何判断文件已存在的

当照片备份设置中,重名文件 为 跳过 的情况下;

App在备份时,会检查服务端对应的文件夹下有没有同名且MD5值相同的文件;

如果存在,则会使用服务端已存在的文件,不上传这个文件;

App备份时,文件上传到服务端哪个文件夹 由这些设置决定:

  • 1、备份目的地
  • 2、目录风格
  • 3、按拍摄日期重命名

比如: 备份目的地为 /upload/mt/iPhone 15; 目录风格 为默认; 按拍摄日期重命名为关闭状态;

假设:有一张2025-01-20号拍摄的照片,文件名为IMG_001.HEIC

那么这张照片会上传到 /upload/mt/iPhone 15/DCIM/2025/01/IMG_001.HEIC

App在备份时,服务端会检查有没有/upload/mt/iPhone 15/DCIM/2025/01/IMG_001.HEIC这个文件,如果存在,则根据文件大小和MD5值判断文件是否需要上传;

导入照片后,日期不对

请检查照片的exif信息中是否有拍摄日期 ( DateTimeOriginal 或者 MediaCreateDate)

(查看方法:MT Photos网页端,打开照片然后点击右上角信息按钮,在照片信息中有【查看文件EXIF信息】按钮);

当照片exif信息中没有拍摄日期,会尝试识别文件名称中是否包含日期;

如果以上2个日期都没有,那么最后会尝试识别照片路径中的日期及照片的最后修改日期;

文件路径支持以下这些格式:

  • 文件路径日期格式1:2021/01/09
    • /photos/2021/01/09/a.jpg
  • 文件路径日期格式2:2009-02-14
    • /photos/2009-02-14/a.jpg

文件名称支持以下这些格式:

  • 文件名称日期格式1:xxx_20220810_171108
    • /photos/upload/IMG_20220810_171108.jpg
    • /photos/upload/IMG_2022-08-10 171108.jpg
    • /photos/upload/IMG_2022_08_10 171108.jpg
    • /photos/upload/IMG_2022.08.10 171108.jpg
    • /photos/upload/IMG_2022.08.10 17.11.08.jpg
    • /photos/upload/IMG_2022-08-10 17-11-08.jpg
    • /photos/upload/IMG_2022_08_10_17_11_08.jpg
  • 文件名称日期格式2:xxx_1611713414335
    • /photos/upload/mmexport1611713414335.jpg
    • /photos/upload/IMG_1655521800000.jpg

或者可以用NewFileTime这样的工具,批量修改照片的修改日期,然后点击【扫描图库】来更新照片的日期;

总结:照片的日期优先级为:exif信息中的拍摄日期 > 文件名中的日期 > 路径中的日期 > 文件最后修改日期

导入照片后,没有位置信息

查看照片Exif信息中是否有GPSLatitude、GPSLongitude这2项信息

在网页中打开照片的信息,然后点击查看EXIF信息

如果有这2项信息,在系统设置中配置了GPS信息识别,等待GPS识别任务处理完成即可显示位置

如果没有GPSLatitude、GPSLongitude或者这2项值为空,则需要检查原始照片是否有位置信息

手机相册内照片有位置,但是备份的照片没有位置信息

检查手机相册是否有安全分享、发送时抹除隐私信息、隐私保护之类的设置

比如:

MIUI 或 HyperOS 在手机相册设置中,找到安全分享,然后关闭 默认抹除照片位置 和 默认抹除照片拍摄信息

ColorOS 在手机相册设置中,找到发送时抹除隐私信息,然后关闭 抹除位置信息 和 抹除拍摄数据

从xmp文件中读取信息

MT Photos支持从相同文件夹下,与文件同名的xmp文件中读取备注、评分、拍摄日期、标签、地图位置这些Exif信息;

比如:

IMG_20241002_192802.jpg
IMG_20241002_192802.jpg.xmp
IMG_20241002_192816.mp4
IMG_20241002_192816.mp4.xmp
IMG_20241002_192910.HEIC
IMG_20241002_192910.HEIC.xmp
IMG_20241002_193005.MOV
IMG_20241002_193005.MOV.xmp

当在MT Photos内编辑文件的备注、评分、拍摄日期、标签、地图位置这些时,会将数据写入到同名的.xmp文件中;

xmp文件支持需要升级MT Photos版本至1.34.1或更高版本

如果需要关闭xmp文件识别和写入,可以在图库管理顶部的图库设置中关闭

浏览器中播放HEVC视频

在Windows中,需要安装HEVC扩展后,浏览器才能播放hevc视频;

安装步骤:

  • 1、先安装hevc扩展,安装方法参考:https://www.bilibili.com/opus/872000729025347588
    • 如果扩展下载失败,可以从 网盘分享 中下载 SW_DVD5_HEVC_Codec_64BIT_MultiLang_-11_MLF_X23-60420.ISO 解压后安装
  • 2、浏览器的设置中,保持图形加速是开启的
  • 3、刷新网页后播放视频

如果使用的是Edge浏览器,需要打开浏览器的设置,然后在 系统和性能 / 系统 中把增强视频关闭,增强视频和HEVC视频硬件解码有冲突会导致视频黑屏;

容器占用的内存很高

部分系统中会显示容器占用的内存比较多,比如超过3个G;

这个显示的内存占用会包含系统共享内存, 通过重启容器可以显示正常;

打开这个容器的终端,输入 top 可以查看内存 RES那一列的值;

一般没有识别任务时,智能识别或人脸识别容器 大概占用1百多MB内存;

如何备份MT Photos的数据、文件?

MT Photos需要备份的数据、文件包含以下几类:

  • 1、数据库文件,文件位置:/config/pgsql (Windows服务端为 %AppData%\mt-photos-server\pgsql 文件夹)
  • 2、生成的缩略图等缓存文件,文件位置:/config/cache (Windows服务端为选择的缓存文件夹)
  • 3、手机App、网页端端上传的照片,文件位置:/upload (Windows服务端为选择的照片备份文件夹)
  • 4、通过目录映射导入的照片,位置文件:自定义

注意: 这些路径都是指在容器内的路径,对于在宿主机中所在的路径,请结合各自docker容器的目录映射关系来查找。

1、备份数据库:

建议在 系统设置 -> 数据库备份 中开启自动备份;

另外也可以点击【生成数据库备份】,来生成数据库备份文件

如果点击生成数据库备份出错,可以参考这里的命令来创建备份文件: 从数据库导出到文件中

2、备份缓存文件:

/config/cache文件夹中的缩略图等文件,可以直接备份整个文件夹;

也可以选择不备份,当文件丢失后,可以通过系统维护工具中的【修复无法显示的缩略图】来重新生成缩略图。

3、备份上传的照片:

/upload文件夹,可以直接备份整个文件夹;

4、目录映射导入的照片:

备份照片所在的文件夹

使用反向代理后,App播放视频很慢

如果使用 ip:端口 作为服务端地址时,播放速度正常;但是使用反向代理后,App无法播放视频或很慢;

请查看 增加Range请求的支持

打开部分相册提示 could not resize shared memory segment

原因:

PostgreSQL 使用 动态共享内存 (Dynamic Shared Memory, DSM) 来处理并行查询(Parallel Queries)。在 Linux 系统中,这通常映射到 /dev/shm 目录。

Docker 容器默认分配给 /dev/shm 的空间非常小,通常只有 64MB。

当图库的照片数量多,执行某些查询时就会因为/dev/shm空间不足而报错。

比如: FATAL: could not resize shared memory segment "/PostgreSQL.xxx": No space left on device

解决方法:

  • 如果使用 docker run: 增加 --shm-size 参数:

    docker run --name mt_photos -d --shm-size=1g  [...此处省略其他的参数] mtphotos/mt-photos:latest
    
  • 如果使用 docker-compose, 在 mtphotos 服务下添加 shm_size 配置,然后重新构建;

    version: "3"
    
    services:
      mtphotos:
        image: registry.cn-hangzhou.aliyuncs.com/mtphotos/mt-photos:latest
        shm_size: 1gb  # 增加这一行
        container_name: mtphotos
        restart: always
        ports:
          - 8063:8063
    # ... 省略其他无需改动的内容
    

MT Photos会收集隐私数据吗?

服务端不会收集任何个人信息,除了联网验证订阅状态,与官方服务器不会有别的请求;

当配置的GPS API之后,服务端会请求高德或mapbox的接口来识别GPS对应的城市信息;

App端集成了高德地图SDK(用于地图模式查看照片),SDK会收集位置信息、传感器信息、设备标识信息、设备参数及系统信息;

App详细隐私政策请查看隐私政策

服务端支持断网使用吗?

默认的激活方式服务端一周至少需要联网验证一次,不支持完全离线使用;

如需要在局域网内离线运行,可以使用离线激活

需要联网验证的原因:

基于docker容器运行,无法基于硬件生成固定的唯一ID;

因此也无法避免一个订阅在多台机器上使用的情况;

所以需要定时联网来验证订阅状态;

如果联网验证服务器关了,功能是不是都不能用了?

  1. 只要还有用户在使用,联网验证服务器是不会关了的
  2. 如果联网验证服务器要关,肯定会提前把联网验证机制关闭
  3. 已有的功能肯定是可以继续使用的,因为功能都是由你部署的服务端提供的

会不会收集照片数据?

服务端不会收集任何照片数据,这也是MT Photos 存在的核心价值

大家也是不想照片被各种云服务分析数据,才会考虑自建照片服务;

如果有这方面的顾虑,可以针对服务端、App的网络请求进行抓包分析;

离线激活

服务端更新到1.32.0以上版本,支持使用离线激活的方式来绑定订阅;

使用离线激活的方式后,订阅将绑定机器,无法再更换别的机器使用;

问题反馈

如果在使用过程中遇到问题,请发送邮件至 support@mtmt.tech

或者 查看其他联系方式

Copyright © 2026 杭州相册家科技有限公司 All Rights Reserved

隐私协议软件许可及服务协议

浙公网安备 33019202000625号浙ICP备2022014580号