Python 网页服务器版部署与运行
项目简介
GitHub 上的 listen1/listen1 是最早的 Listen 1 项目,使用 Python 开发 Web 服务器。与其他产品线的关系:
listen1:Python Web 服务器(最早的版本)listen1_chrome_extension:Chrome / Firefox 插件(JS 版)listen1_desktop:Electron 桌面版(基于插件版 JS 库封装)listen1_mobile:React Native 移动端
本地运行方式
方式一:直接运行 Python 服务器
git clone https://github.com/listen1/listen1.git
cd listen1
python -m http.server 3000
然后在浏览器访问 http://localhost:3000 即可使用。这种方式最简单,但只适合本机预览。
方式二:打包版
GitHub Release 提供了打包好的 Windows 版和 Mac 版 Web 服务器。下载后解压运行,会自动在本地启动一个 Web 服务进程,浏览器自动打开。
自托管部署
如果你有公网服务器或 NAS(群晖 / 威联通 / OpenWRT),可以将 Listen 1 部署为自己的音乐入口:
Nginx 反向代理方案
server {
listen 80;
server_name your-listen1-domain.com;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Docker 方案(社区镜像)
社区维护的 Docker 镜像可以一键部署:
docker run -d --name listen1 -p 3000:3000 listen1/python-webserver
安全提示
- 部署在公网时务必配置 HTTPS(Let's Encrypt 免费证书)
- 不要将服务器直接暴露到公网,建议通过内网穿透或 VPN 访问
- Listen 1 不提供多用户隔离,多人共用建议分别部署实例
与桌面版的取舍
网页版适合以下场景:
| 场景 | 推荐方案 |
|---|---|
| 个人电脑本地使用 | 桌面版(Electron) |
| 浏览器里临时听歌 | Chrome / Firefox 插件 |
| NAS / 服务器自托管 | Python 网页版 |
| 手机端使用 | React Native 移动端 |