Skip to content

介绍

machete

image-20241219065243694

目录

[toc]

版权声明

这里只做关于此优秀项目的一些个人使用记录,具体信息请访问作者官网,版权归原作者所有。

官网:https://jialuoma.com/

仓库地址:https://github.com/filesite-io/machete

image-20240807124010055

image-20240807072211857

公告

因个人最近清理了百度网盘已经分享的链接(原来已分享的链接均已失效),如果有小伙伴需要相关实战源代码,请随时联系笔者即可。😘

官网

https://jialuoma.com/

image-20240807124010055

https://filesite.io/

image-20240807121804181

仓库地址

https://github.com/filesite-io/machete

image-20240807072211857

特色

以下为machete家庭相册的几个与众不同的地方:

  • 你的照片目录为数据源、所见即所得,保留你的照片管理习惯

  • 开放源代码,源码公开且免费使用

  • 无数据库非常轻量、毫秒级响应

  • 点击图片放大浏览时默认使用原图,适合大屏幕欣赏高清图片

  • 支持背景音乐播放

  • 支持单个目录下所有图片自动循环播放

  • 支持单个目录下所有视频自动循环播放

  • 支持白天/夜晚两种浏览模式

  • 利用同步软件(FreeFileSync)可轻松将本地相册同步到服务器端并按原层级结构渲染成一个个人相册公开出去,我们唯一要做的就是维护好本地相册数据(改变相册里照片数据或新增照片等,做好本地相册数据备份(可同步到云同步空间))。

  • 网上开源相册,很少有能实现如matchete一样直接把本相册目录按原层级结构给渲染成一个相册,这个是灵魂。 我们只需维护好本地相册数据,然后把更新的内容直接推送到服务器端。 不管是摄影照片,还是个人日常照片,使用这个方式都很丝滑(分享体验和数据维护及备份方向)。

    常见开源相册也有直接提供分享(无需登录,例如photoprism等)和私密存放的方式,但大多都有后端管理,后端是可以直接编辑相册数据的(删除/上传/移动图片等)。但此时带来了问题,web编辑后,本地相册数据还没改变,此时维护了2套数据。(很少有能实现web编辑后,能把更新同步到本地的;且大多数都是带有数据库的,当然利用数据库备份等也可以备份数据,但复杂度就上去了)

image-20240929204104626

优秀案例

One

https://photo.onedayxyy.cn/

image-20240905125953121

x.p00.xyz

https://x.p00.xyz:60000/

image-20240824100706529

使用技术

image-20240807125449908

项目特色

👍 没有用数据库系统,直接读取磁盘

感谢肯定,machete的一大特点是没有用数据库系统,直接读取磁盘,如果服务器是ssd磁盘的话,跟读取内存速度差不多,另外系统本身简单,所以性能还不错

这个也是我们做machete的原因,就是希望帮用户把本地目录直接变成网站,节省使用后台管理数据的时间

👍 性能还不错

嗯,我们测试过整个目录图片➕视频超过3万个,文件大小几年累积了400g左右,单个目录下照片上千张,速度还行;如果是第二次打开在有缓存的情况下,那都能做到50毫秒以内的速度

如果外网访问,还要考虑一个因素,服务器的带宽,图片是有延迟加载,我们的demo服务器是阿里云的10m带宽,感觉还行,一张2m的图片,也就一秒左右

👍 免登录可浏览图片

外网分享应该也很重要,可以放到博客里当一个模块。也可以当自己的摄影作品分享地。很nice,毕竟内网也不会一直去看照片或者视频的。

👍 winodws和linux同步相册数据后能保持目录层级不变

在线体验

Machete是单入口模式PHP源码,不支持子目录方式访问,以下示例都是以子域名或根域名配置nginx根目录指向代码目录下的www/index.php。

image-20240807125639571

  1. 文档站
名称网址
FileSiteFilesite.io
  1. 导航站
名称网址
站长手册WebDirectory.FileSite.io
Web3速查手册Web3.FileSite.io
  1. 图片站
名称网址
看美女GoogleImage.Filesite.io
在线演示带后台版Machete在线演示
  1. 视频站
名称网址
在线学Duan.Filesite.io
  1. 视频收藏/分享站
名称网址
Ta荐TaJian.tv

在线演示

图片站

image-20240807121917336

==家庭相册(推荐)==

效果https://demo.jialuoma.cn/

image-20240807122027048

image-20240808062921204

==看美女==

https://googleimage.filesite.io/

image-20240807122004182

部署

见单独md。

https://wiki.onedayxyy.cn/docs/machete-install

image-20241008071033742

应用场景

image-20240807125144264

联系方式 && QQ群

image-20240807125308082

本地图片和视频目录、文件秒变独立网站,详情私聊群主! 官网:jialuoma.com 免费体验:demo.jialuoma.cn 源码下载:filesite.io

image-20240807122315772

更新日志

2024.12.18

bash
v0.4.1新版已经发布!

核心功能:
1. 增加文件扫描
2. 所有目录文件数量统计
3. 按年、月归类文件

2024.10.22

bash
新版发布:v0.3.7

迭代内容:

* 全屏播放图片的时候,图片宽度占满屏幕,高度自适应并垂直居中(如果是竖屏的图片则高度铺满屏幕,宽度自适应)
* 增加文件排序功能,可按文件名或指定排序文件进行排序


详情请参照源码根目录下文件:FAQ.md
线上查看:
https://git.filesite.io/filesite/machete/src/branch/master/FAQ.md

2024.10.7

bash
## 版本:v0.3.5

迭代内容:

* 密码授权访问增加频率限制,10分钟内最多错误5次

说明:
为避免加密相册被暴力破解,当10分钟内密码错误5次之后,需等待10分钟才能正常授权。

2024.10.6

bash
## 版本:v0.3.4

迭代内容:

* 目录封面图api改为get请求,以支持cdn缓存 
* 缩略图、目录封面图、视频和音乐meta信息完善客户端缓存
* 为客户端缓存增加配置项

说明:
* 此版本会改善图片在浏览器端的显示速度(在浏览器有缓存的情况下)
* 目录封面图、视频封面图默认会在浏览器缓存 5 分钟;
  如果更换它们,需要等待5分钟或手动开启浏览器的“关闭缓存”才能看到新的图片

2024.9.30

bash
## 版本:v0.3.3

发布日期:2024-09-30

迭代内容:
* 自动播放图片时隐藏图片标题
* 增加自动播放图片延迟时间配置项:slide_show_timeout
* 增加每页显示图片数量配置项:default_page_size


升级代码到最新版,
在runtime/custom_config.json里,
增加配置:slide_show_timeout
这个参数设置延迟秒数,例如:5,就是每间隔5秒切换下一张图片



升级最新版,修改配置"default_page_size"
可以自定义每页显示图片数量

2024.9.29

bash
## 版本:v0.3.2

发布日期:2024-09-29

迭代内容:

为优化外网环境列表页打开速度以及看大图保持清晰度。

* 图片浏览,增加1v1看原图
* 增加了中间尺寸的缩略图
  共3个尺寸:
  1. 列表页面:最小,默认:360x270
  2. 大图:中间,默认:1080x720
  3. 原图:原始尺寸

2024.9.28

bash
## 版本:v0.3.0 发布

发布日期:2024-09-28

迭代内容:
* 增加mp3音乐封面图支持
* 完善视频、音乐目录封面图获取
* 修复老版本浏览器播放器加载视频、音乐列表失败的问题

mp3音乐设置封面图方法:我愿意-王菲_snapshot.txt
1. 在mp3文件同级目录放一个同名的图片文件,如:a.mp3和a.jpg
2. 在mp3文件同级目录放一个它的txt说明文件,如:a.mp3和a_snapshot.txt,在txt文件里填上同级目录的图片名(如a.jpg)

2024.9.27

bash
filesite/machete发布记录

版本:v0.2.9
发布日期:2024-09-27

迭代内容:
* 增加m3u8 + ts视频支持
* 增加mp3音乐支持
* 优化视频播放器手机版ui


## 升级更新

### 方法1

进入docker容器,执行:upgrade_machete


### 方法2

百度搜索“filesite/machete“,打开gitee或gitcode项目页面,
用git下载最新版,或者直接下载压缩包源码,
解压缩之后,用rsync命令同步到服务器machete目录:

```
rsync -vrL machete/* /var/www/machete/ \
        --exclude=www/content/ \
        --exclude=www/navs/ \
        --exclude=www/girls/ \
        --exclude=www/videos/ \
        --exclude=www/tajian/ \
        --exclude=runtime/
```

2024.9.18

image-20240919071346397

号外!machete相册源码发布新版啦!增加功能:1. pc版左侧目录支持展开/收拢,且可配置(配置项见conf/app.php)2. 增加内网ip和ip白名单设置,支持对:清空缓存、设置目录封面图、设置视频封面图管理权限限制gitcode、gitee、github、docker同步发布,欢迎更新体验!

2024.9.7

重要更新‼️

  • 增加默认关闭后台相关api配置,之前移除后台系统没有一并关闭api接口
  • 增加系统版本号和发布日期显示,方便跟踪问题请大家及时更新最新版,以免在外网使用的时候,被人使用默认配置的帐号密码调用后台api对照片进行修改、删除操作!

image-20240907091948937

第二波更新:

最新版更新:

  1. 支持照片根目录下放favicon.ico
  2. 部分css优化
  3. readme和faq文档更新
  4. 默认关闭版本号和发布日期

image-20240907193319699

第三波更新

image-20240908082224656

image-20240908082211705

2024.9.4

增加密码授权访问功能

image-20240905065207683

image-20240905065253394

2024.8.22

(点击图片浏览大图时显示缩略图完成,nice)

@One 更新最新版代码,新版做了以下升级:

  1. 完善原图下载功能(点击图片浏览大图时,右上角增加了“下载”图标)
  2. 增加配置项enableSmallImageForWan,开启的时候,点击图片浏览大图时显示缩略图;为外网分享图片减小大图尺寸提升显示速度;

image-20240824095651523

image-20240824095556103

2024.8.13

(列表页面的图片和目录,都支持服务器端动态生成缩略图)

machete家庭相册已经升级,列表页面的图片和目录,都支持服务器端动态生成缩略图了,可以升级新版试试

image-20240813150717632

  • 自己测试后效果

image-20240813150838164

e7b17b163ae90f45270f2b446c15a194

3a8cd627b764ef4900053377ab7b3653

f72ac68d36c4ce3f0a40f49f698af2cd

  • 作者反馈

image-20240813150941814

  • 到处本次镜像
bash
mkdir /root/filesite-machete-docker-images
cd /root/filesite-machete-docker-images
docker save filesite/machete|gzip > filesite-machete-2024.8.13.tar.gz

filesite-machete-2024.8.13.tar.gz

2024.8.10

(修复bug后版本)

最新版代码和镜像已经发布,完善了几个细节:

  1. 视频播放支持当前目录下的所有视频循环播放
  2. 优化目录封面图获取,避免黑图
  3. 去掉了admin/后台
  4. 优化升级脚本,优先从gitcode下载源码
bash
filesite-machete-2024.8.10.tar.gz #261M

最近更新