webui / README_HF.md
BG5's picture
Upload 7 files
c4bdf8c verified
# WebShell - Hugging Face Spaces版本
这是一个基于Flask和WebSocket的Web终端和文件管理系统,专为Hugging Face Spaces部署优化。
## 功能特性
### 🗂️ 文件管理
- 📁 文件/文件夹浏览、创建、删除、重命名
- 📤 文件上传下载
- ✏️ 在线代码编辑器(支持语法高亮)
- 👀 文件预览功能
### 💻 终端模拟器
- 🖥️ 实时终端交互(基于WebSocket)
- 🐧 支持Linux bash命令
- 📜 命令历史记录(↑↓键浏览)
- 🔄 多终端会话支持
### 🛡️ 安全特性
- 🔒 路径遍历攻击防护
- 📁 访问权限限制在应用目录内
- 🚫 恶意命令执行防护
## 技术栈
**后端:**
- Flask + Flask-SocketIO
- Python subprocess
- 多线程处理
**前端:**
- Bootstrap 5 响应式设计
- CodeMirror 代码编辑器
- Socket.IO 实时通信
- Font Awesome 图标
## 部署说明
这个版本已经针对Hugging Face Spaces进行了优化:
1. **端口配置**:使用环境变量 `PORT`(默认7860)
2. **Linux兼容**:支持Linux bash终端
3. **Docker化**:包含完整的Dockerfile
4. **依赖管理**:requirements.txt包含所有必需的包
## 环境变量
- `PORT`: 服务端口(默认7860)
- `HOST`: 服务主机(默认0.0.0.0)
- `DEBUG`: 调试模式(默认False)
## 使用方法
部署到Hugging Face Spaces后,访问以下功能:
1. **主页**`/` - 功能选择页面
2. **文件管理**`/files` - 文件浏览和编辑
3. **终端**`/terminal` - 命令行界面
## 安全提醒
⚠️ **重要安全提醒**
- 此工具仅用于开发和学习目的
- 请勿在生产环境中暴露于公网
- 定期检查和更新依赖包
- 谨慎使用终端功能
## 许可证
MIT License
---
**注意**:本项目仅供学习和开发使用,请遵守相关法律法规和平台使用条款。