1. 软件介绍 by 台州静哥哥 qq:15270506
>>>>>>>>>>免费下载
1.1 软件概述
ZJWeb(执行文件:zjweb.exe)是一款基于Rust语言开发的高性能静态文件服务器,专为快速、稳定地提供静态文件访问服务而设计。相比传统的Python/Node.js服务器,ZJWeb具有以下核心优势:
- 极致性能:基于Rust语言的内存安全特性和异步I/O模型,处理速度快,资源占用低
- 高并发处理:内置高并发阈值控制和延迟处理机制,支持数千并发连接
- 灵活配置:通过配置文件自定义监听端口、目录映射、超时时间等参数
- 完善的监控:内置实时性能统计页面,可查看连接数、响应时间、流量等指标
- 安全可靠:内置路径遍历防护,支持大文件流式传输
- 易用性强:无需复杂部署,单文件运行,自动识别配置文件
1.2 核心功能
| 功能模块 |
详细说明 |
| 静态文件服务 |
支持HTML、CSS、JS、图片、视频等所有静态文件类型,自动识别MIME类型 |
| 多目录映射 |
可将不同的URL路径映射到本地不同的物理目录 |
| 目录浏览 |
自动生成美观的目录列表,支持中文文件名,URL编码处理 |
| 性能监控 |
实时查看并发连接数、响应时间、流量统计等关键指标 |
| 高并发控制 |
可配置高并发阈值,自动延迟处理新连接,保护服务器稳定 |
| 长连接支持 |
支持HTTP长连接测试,可配置全局超时时间 |
| 安全防护 |
防止路径遍历攻击,限制最大文件大小 |
2. 安装与运行
2.1 系统要求
- 操作系统:Windows 7/8/10/11 (32/64位)、Linux、macOS
- 硬件要求:最低1GB内存,无特殊CPU要求
- 网络要求:确保监听端口未被占用(默认为8080)
2.2 安装步骤
- 下载 zjweb.exe 执行文件
- 将文件放置在任意目录(建议单独创建文件夹,如 D:\zjweb)
- (可选)创建配置文件 zj.ini (详见配置文件章节)
- (可选)创建静态文件目录(如 www、static、public)
2.3 运行方法
方法一:双击运行(简单模式)
直接双击 zjweb.exe 文件,程序会自动:
- 使用默认配置运行
- 监听 0.0.0.0:8080 端口
- 默认映射:
- / → ./www 目录
- /static → ./static 目录
- /public → ./public 目录
方法二:命令行运行(推荐)
:: 打开命令提示符(CMD)或PowerShell
cd /d D:\zjweb
zjweb.exe
提示:使用命令行运行可以看到详细的运行日志,方便排查问题。按 Ctrl+C 可优雅关闭服务器,查看运行统计信息。
2.4 验证运行
服务器启动成功后,打开浏览器访问以下地址验证:
- 首页:http://localhost:8080
- 统计页面:http://localhost:8080/zjtj
- 测试页面:http://localhost:8080/ok
成功标志:控制台显示"启动成功",浏览器能正常访问上述地址。
3. 基本使用方法
3.1 文件部署
将静态文件放置到对应的目录中即可访问:
- 根目录文件(如 index.html)放在 ./www 目录
- 静态资源(CSS/JS/图片)放在 ./static 目录
- 公共文件放在 ./public 目录
3.2 访问文件
| 本地文件路径 |
访问URL |
| ./www/index.html |
http://localhost:8080/ 或 http://localhost:8080/index.html |
| ./www/about.html |
http://localhost:8080/about.html |
| ./static/css/style.css |
http://localhost:8080/static/css/style.css |
| ./public/images/photo.jpg |
http://localhost:8080/public/images/photo.jpg |
3.3 查看服务器状态
访问 http://localhost:8080/zjtj 可查看详细的服务器状态:
- 服务器配置信息
- 当前并发连接数
- 最大并发数及时间
- 平均响应时间
- 总请求数、长/短连接数
- 已发送流量统计
3.4 测试服务器
- 基础测试:访问 http://localhost:8080/ok ,返回 "OK" 表示服务器正常
- 长连接测试:访问 http://localhost:8080/long-test ,测试长连接功能
4. 配置文件详解
4.1 配置文件基础
ZJWeb 使用 zj.ini 作为配置文件,位于程序同目录下。如果配置文件不存在,程序会使用默认配置运行。
提示:配置文件采用 INI 格式,使用分号(;)或井号(#)添加注释,支持字符串值的引号包裹。
4.2 配置文件结构
[server]
; 服务器基本配置
name = "ZJWeb 高性能服务器"
host = "0.0.0.0"
port = 8080
global_timeout = 300
high_concurrent_threshold = 1000
high_concurrent_delay_ms = 100
max_file_size_gb = 10
[static_dirs]
; 静态目录映射配置
/ = "./www"
/static = "./static"
/public = "./public"
/admin = "D:/web/admin"
4.3 [server] 节配置项详解
| 配置项 |
默认值 |
说明 |
| name |
Rust TCP Server |
服务器名称,显示在网页标题和统计页面 |
| host |
0.0.0.0 |
监听地址,0.0.0.0 表示监听所有网卡 |
| port |
8080 |
监听端口,需确保端口未被占用 |
| global_timeout |
300 |
全局超时时间(秒),长连接超过此时长自动关闭 |
| high_concurrent_threshold |
1000 |
高并发阈值,连接数超过此值触发延迟处理 |
| high_concurrent_delay_ms |
100 |
高并发时的延迟时间(毫秒) |
| max_file_size_mb |
- |
最大文件大小(MB),与max_file_size_gb二选一 |
| max_file_size_gb |
10 |
最大文件大小(GB),优先级高于MB配置 |
注意:端口配置需要确保权限足够,1-1024端口在Linux/macOS下需要管理员权限,建议使用1024以上端口。
5. 目录映射配置
5.1 映射规则
[static_dirs] 节用于配置URL路径到本地目录的映射,规则如下:
- 键:URL路径(必须以 / 开头)
- 值:本地物理路径(支持相对路径和绝对路径)
- 相对路径基于程序运行目录
- 支持Windows和Linux路径格式
5.2 映射示例
[static_dirs]
; 根目录映射到当前目录下的www文件夹
/ = "./www"
; /static URL映射到当前目录下的static文件夹
/static = "./static"
; /public URL映射到D盘的public文件夹(绝对路径)
/public = "D:/web/public"
; /docs URL映射到Linux路径
;/docs = "/var/www/docs"
5.3 高级映射技巧
- 多级目录映射:
/blog = "./my_blog"
/blog/images = "./blog_images"
- 绝对路径映射:适合文件不在程序目录的情况
/data = "E:/data_files"
/backup = "F:/backup/web_files"
- 网络路径:暂不支持直接映射网络路径,建议先挂载为本地磁盘
提示:程序会自动检查目录是否存在,不存在的目录会在控制台给出警告,但不会影响服务器运行。
6. Web功能说明
6.1 自动索引页
访问目录时,服务器会自动查找以下默认索引文件:
- index.html
- index.htm
- default.html
如果未找到索引文件,会自动生成美观的目录列表页面。
6.2 目录浏览功能
目录列表页面特性:
- 支持中文文件名显示和URL编码
- 显示文件大小(自动转换单位:B/KB/MB/GB)
- 区分文件和目录类型
- 提供上级目录链接
- 显示其他静态目录的快速链接
- 响应式设计,适配移动端
6.3 性能统计页面 (/zjtj)
访问 http://localhost:8080/zjtj 可查看:
- 服务器基本配置信息
- 静态目录配置状态
- 实时性能指标:
- 当前并发数、最大并发数
- 并发负载百分比和等级
- 平均响应时间
- 总发送流量
- 请求统计:
- 总连接数、当前在线数
- 总请求数、长/短连接数
- 静态文件请求数
- 快速访问链接
6.4 错误页面
服务器提供友好的错误页面:
- 404 Not Found:文件/路径不存在
- 403 Forbidden:文件过大或权限问题
- 500 Internal Server Error:服务器内部错误
8. 常见问题解答
Q1: 启动程序后无法访问?
A1: 请检查:
- 端口是否被占用(可修改port配置项)
- 防火墙是否允许程序访问网络
- 监听地址是否配置正确(建议使用0.0.0.0)
- 浏览器地址是否正确(http://localhost:端口号)
Q2: 中文文件名显示乱码?
A2: 程序已内置URL编码/解码处理,确保:
- 配置文件使用UTF-8编码保存
- 文件名使用合法的UTF-8字符
- 浏览器使用最新版本
Q3: 大文件无法下载?
A3: 检查 max_file_size_gb/max_file_size_mb 配置项,确保值大于文件大小。程序支持最大10GB文件(默认配置)。
Q4: 配置文件修改后不生效?
A4: 配置文件需要重启服务器才能生效。修改 zj.ini 后,请关闭程序重新运行。
Q5: 如何设置开机自启?
A5: Windows系统:
- 创建程序快捷方式
- 将快捷方式复制到 开始菜单 → 程序 → 启动 目录
- 或使用任务计划程序创建定时任务
Q6: 如何在后台运行?
A6: Windows系统可使用:
start /b zjweb.exe > server.log 2>&1
Linux/macOS系统可使用:
nohup ./zjweb > server.log 2>&1 &
Q7: 支持HTTPS吗?
A7: 当前版本暂不直接支持HTTPS,建议使用Nginx/Caddy等反向代理软件提供HTTPS支持。