# tiny-asp-proxy **Repository Path**: tiyerliu/tiny-asp-proxy ## Basic Information - **Project Name**: tiny-asp-proxy - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-16 - **Last Updated**: 2025-09-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Tiny ASP Proxy 一个轻量级的HTTP代理程序,专门针对ASP文件进行压缩编码处理。 ## 特性 - 🚀 **高性能**: 基于Rust和Hyper构建,性能优异 - 📦 **轻量级**: 二进制文件仅765K(x86_64)或729K(ARM64) - 🔧 **多架构支持**: 支持x86_64和ARM64架构 - 🗜️ **智能压缩**: 对ASP文件进行gzip压缩和base64编码 - ⚡ **HTTP1优化**: 专门针对HTTP1后端优化 - 🎛️ **灵活配置**: 支持编码开关参数 ## 快速开始 ### 构建 ```bash # 默认构建(min-size + x86_64) ./scripts/build.sh # 查看所有选项 ./scripts/build.sh --help ``` ### 运行 ```bash # 基本用法 ./target/min-size/tiny-asp-proxy 0.0.0.0:3000 http://backend:8081 # 启用ASP文件编码 ./target/min-size/tiny-asp-proxy 0.0.0.0:3000 http://backend:8081 1 ``` ## 项目结构 ``` tiny-asp-proxy/ ├── src/ # 源代码 │ └── main.rs ├── scripts/ # 构建和工具脚本 │ ├── build.sh # 主构建脚本 │ ├── analyze.sh # 分析脚本 │ └── compress.sh # 压缩脚本 ├── docs/ # 文档 │ ├── BUILD_GUIDE.md # 构建指南 │ └── OPTIMIZATION_SUMMARY.md # 优化总结 ├── assets/ # 资源文件 │ ├── shell.css # 样式文件 │ └── shell.js # JavaScript文件 ├── build.rs # 构建脚本 ├── Cargo.toml # 项目配置 └── README.md # 项目说明 ``` ## 工作原理 1. **代理转发**: 接收HTTP请求并转发到后端服务器 2. **智能检测**: 检测ASP文件和HTTP状态码 3. **压缩编码**: 对符合条件的ASP响应进行gzip压缩和base64编码 4. **HTML包装**: 将编码后的内容包装在HTML模板中 5. **客户端解码**: 通过JavaScript在客户端解码和显示内容 ## 构建选项 ### 编译模式 - `min-size`: 最小化大小构建(默认) - `release`: 标准发布构建 - `dev`: 开发构建 ### 目标架构 - `x86_64`: x86_64-unknown-linux-gnu(默认) - `arm64`: aarch64-unknown-linux-gnu ### 示例 ```bash # ARM64最小化构建 ./scripts/build.sh min-size arm64 # x86_64发布构建 ./scripts/build.sh release x86_64 # 开发模式 ./scripts/build.sh dev ``` ## 性能优化 - **内存优化**: 减少不必要的内存分配和复制 - **编译优化**: 使用LTO、符号剥离等优化技术 - **依赖精简**: 只包含必要的依赖特性 - **代码优化**: 使用常量模板和预分配策略 详细优化信息请参考 [docs/OPTIMIZATION_SUMMARY.md](docs/OPTIMIZATION_SUMMARY.md) ## 文档 - [构建指南](docs/BUILD_GUIDE.md) - 详细的构建说明 - [优化总结](docs/OPTIMIZATION_SUMMARY.md) - 性能优化详情 ## 系统要求 - Rust 1.70+ - Linux x86_64 或 ARM64 - 网络连接(用于下载依赖) ## 许可证 本项目采用MIT许可证。 ## 贡献 欢迎提交Issue和Pull Request! ## 更新日志 ### v0.1.0 - 初始版本 - 支持ASP文件压缩编码 - 多架构构建支持 - 性能优化