尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

OpenList的Office文档预览新方式-基于宝塔面板Docker容器的BaseMetas Fileview安装与配置教程

OpenList的Office文档预览新方式-基于宝塔面板Docker容器的BaseMetas Fileview安装与配置教程
📅 发布时间:2026/7/19 2:27:58

OpenList是著名的开源网盘管理系统AList的开源分支,支持挂载网盘、S3兼容对象存储、本地文件夹等多种数据存储系统,也内置了多种格式文档的在线预览功能。Office文档是OpenList使用中较为常见的文件格式之一,OpenList采用了微软预览API接口以及谷歌预览API接口来实现Office文档的预览功能,但是在国内使用时,微软预览API接口较为不稳定(时而能打开,时而打不开)谷歌API预览接口则由于网络原因根本无法使用,给预览效果造成了极大的不便。BaseMetas Fileview 为企业级文档预览引擎,提供标准化 API、高并发支撑与横向扩展能力,可嵌入 OA、SaaS 等系统。因此,我将尝试安装并部署BaseMetas Fileview,并将其用于OpenList的文档预览功能。

一、在宝塔面板的Docker中安装并配置BaseMetas Fileview

①登录宝塔面板管理后台,点击左侧Docker,然后先点击上方栏目中的“本地镜像”,再点击下方左侧“从仓库中拉取”

②在弹出来的窗口中,先点击“命令拉取”,再复制粘贴下方链接:

docker pull basemetas/fileview:1.5.1

然后点击右边的“执行命令”,当下方命令行界面中显示“bt_succesful”时,可以关闭窗口

提醒:最新版本可前往官网文档处复制(“docker hub”下方的链接)

③此时,BaseMetas Fileview的Docker镜像已经被成功拉取,点击右侧的“创建容器”

④在弹出来的窗口中,进行以下修改(可参考下图),最后点击右下角的“保存”:

1.容器名称:BaseMetas(随意取名) 2.本地端口:9000 3.容器:80 4.对外暴露:打开

⑤现在,通过“服务器IP:9000”的方式已经能够访问到这个Docker项目首页

二、利用域名反向代理Docker中的BaseMetas Fileview项目

①在宝塔面板后台中,点击左侧“网站”,然后点击右侧“添加站点”

②填入想要反向代理Docker中的BaseMetas Fileview项目的域名,“PHP版本”可以选择“纯静态”,然后点击右下角的“确定”

③网站新建完成后,点击右侧的“设置”

④在弹出的窗口中,建议先给网站配置好HTTPS(即左侧的SSL),然后点击左侧的“反向代理”,再点击右侧的“添加反向代理”

⑤在弹出的窗口中,进行以下修改(可参考下图),最后点击右下角的“确定”:

1.代理名称:basemetas(随意取名) 2.目标URL:http://服务器IP:9000 3.发送域名:$host

⑥记得在DNS服务商中添加新域名的IP地址解析,稍等片刻,已经可以用域名的方式访问Docker中的BaseMetas Fileview项目了

三、利用域名作为OpenList在线预览文件的“转换器”

①再次点击宝塔面板左侧“网站”,然后点击右侧“添加站点”

②输入一个新域名(或新的二、三……级域名),选择PHP版本(不用太老就行,建议8.0及以上),然后点击右下角的“确定”

③网站新建完成后,点击右侧的“设置”

④在弹出的窗口中,建议先配置好HTTPS(即SSL),然后关闭窗口

⑤点击进入刚刚创建好的网站的根目录

⑥找到“新建”,点击下方的“新建空白文本”

⑦将文件命名为“proxy.php”

⑧找到刚刚新建的“proxy.php”文件,在右侧“更多”中,点击“编辑”

⑨复制粘贴以下代码,并根据实际情况进行修改(可参考下图),然后点击左上角的“保存”:

<?php $url = $_GET['url'] ?? ''; if ($url === '') { http_response_code(400); exit('Missing url'); } $config = json_encode( ['url' => $url], JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES ); if ($config === false) { http_response_code(500); exit('JSON encode error'); } $data = base64_encode($config); header( 'Location: https://设置了反向代理的域名(第一个域名)/preview/view?data=' . urlencode($data), true, 302 ); exit;

⑩记得在DNS服务商中添加新域名的IP地址解析

四、OpenList中增加BaseMetas Fileview的预览选项

①登录OpenList管理员后台,点击左侧“设置”-“预览”,在右侧找到“iframe预览”,并对第一项(doc,docx,xls,xlsx,ppt,pptx)进行修改,增加一行即可(可参考下图):

"doc,docx,xls,xlsx,ppt,pptx": { "basemetas":"https://view.botaokeji.net/proxy.php?url=$e_url", "Microsoft":"https://view.officeapps.live.com/op/view.aspx?src=$e_url", "Google":"https://docs.google.com/gview?url=$e_url&embedded=true" },

②现在就可以选择一个Office文档进行测试,预览成功

提示:由于服务器性能、带宽的影响,预览服务需要一段时间缓冲转圈圈,请耐心等待哦

五、参考资料

①BaseMetas Fileview文档

②proxy.php文件代码编写以及bug修复:DeepSeek+ChatGPT

相关新闻

  • 2026最新8款企业团队编程软件实测深度对比
  • RAGAS 评测分数不稳定?5 种方案抑制 LLM 裁判幻觉与波动
  • 鸿蒙 ArkTS 实战:Split Screen Timer 从效率工具到状态管理完整解析

最新新闻

  • Android定时任务实现:AlarmManager详解与优化
  • 服务器电源架构解析:从PFC到LLC谐振变换的可靠性设计
  • .NET生态现状与开发者应对策略
  • 补充描述:IEC 61850 中 ICD、CID、SCL、SCD、IID 的关系说明
  • Intelligent Lux:智能引导式EDA工作流重构
  • Java TimerTask定时任务详解与Android实践

日新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

周新闻

  • SaaS软件行业GEO实践:AI搜索时代的品牌可见性与获客新路径
  • 什么是PCTFE?医药高端包装的“防潮王牌“材料
  • 【JVM调优实战】16-可视化利器-JConsole-VisualVM-JMC

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号