docs: 创建专业的项目 README 文档
详细说明: - 添加完整的项目介绍和架构说明 - 包含 7 个 AI Agent 的详细介绍 - 添加技术栈和 Mermaid 架构图 - 完善安装和使用指南 - 添加开发指南和 Git 工作流 - 新增 Windows 快速部署文档 - 更新前端组件和启动脚本 - 添加多种环境配置文件 修改的文件: - 新增 README.md 主文档 - 新增 doc/ 目录及部署文档 - 更新前端演示系统组件 - 添加多个启动脚本变体 - 配置文件优化 影响的功能模块: - 项目文档体系 - 部署和启动流程 - 前端展示系统 - 环境配置管理
This commit is contained in:
@@ -26,6 +26,11 @@ const mimeTypes = {
|
||||
|
||||
// 创建服务器
|
||||
const server = http.createServer((req, res) => {
|
||||
// 记录请求
|
||||
const timestamp = new Date().toLocaleString('zh-CN');
|
||||
const clientIP = req.connection.remoteAddress || req.socket.remoteAddress;
|
||||
console.log(`[${timestamp}] ${clientIP} -> ${req.method} ${req.url}`);
|
||||
|
||||
// 解析 URL
|
||||
const parsedUrl = url.parse(req.url);
|
||||
let pathname = decodeURIComponent(parsedUrl.pathname);
|
||||
@@ -89,11 +94,45 @@ function serveFile(filePath, res) {
|
||||
});
|
||||
}
|
||||
|
||||
// 获取本地IP地址
|
||||
function getLocalIP() {
|
||||
const os = require('os');
|
||||
const interfaces = os.networkInterfaces();
|
||||
|
||||
for (const name of Object.keys(interfaces)) {
|
||||
for (const iface of interfaces[name]) {
|
||||
// 跳过内部(即127.0.0.1)和非IPv4地址
|
||||
if (iface.family === 'IPv4' && !iface.internal) {
|
||||
return iface.address;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 'localhost';
|
||||
}
|
||||
|
||||
// 启动服务器
|
||||
server.listen(PORT, HOST, () => {
|
||||
const localIP = getLocalIP();
|
||||
|
||||
console.log('======================================');
|
||||
console.log(' Web Result 静态服务器');
|
||||
console.log(` 运行地址: http://localhost:${PORT}`);
|
||||
console.log(' 按 Ctrl+C 停止服务器');
|
||||
console.log(' Web Result 静态服务器启动成功');
|
||||
console.log('======================================');
|
||||
console.log('');
|
||||
console.log('🏠 本地访问:');
|
||||
console.log(` http://localhost:${PORT}`);
|
||||
console.log('');
|
||||
|
||||
if (localIP !== 'localhost') {
|
||||
console.log('🌐 局域网访问:');
|
||||
console.log(` http://${localIP}:${PORT}`);
|
||||
console.log('');
|
||||
console.log('📱 移动设备访问:');
|
||||
console.log(` http://${localIP}:${PORT}`);
|
||||
console.log('');
|
||||
}
|
||||
|
||||
console.log('[提示] 服务器监听所有网络接口 (0.0.0.0)');
|
||||
console.log('[提示] 按 Ctrl+C 停止服务器');
|
||||
console.log('');
|
||||
console.log('等待请求...');
|
||||
});
|
||||
@@ -2,20 +2,31 @@
|
||||
|
||||
# Web Result 静态服务器启动脚本 (Node.js版)
|
||||
# 端口: 4155
|
||||
# 支持局域网访问
|
||||
|
||||
# 颜色定义
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m'
|
||||
GREEN='[0;32m'
|
||||
BLUE='[0;34m'
|
||||
YELLOW='[1;33m'
|
||||
RED='[0;31m'
|
||||
NC='[0m'
|
||||
|
||||
# 获取脚本所在目录
|
||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
# 获取局域网IP
|
||||
get_lan_ip() {
|
||||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||||
ifconfig | grep "inet " | grep -v 127.0.0.1 | head -1 | awk '{print $2}'
|
||||
else
|
||||
hostname -I | awk '{print $1}'
|
||||
fi
|
||||
}
|
||||
|
||||
echo -e "${BLUE}======================================${NC}"
|
||||
echo -e "${BLUE} Web Result 静态服务器${NC}"
|
||||
echo -e "${BLUE} 端口: 4155${NC}"
|
||||
echo -e "${BLUE} 支持局域网访问${NC}"
|
||||
echo -e "${BLUE}======================================${NC}"
|
||||
echo
|
||||
|
||||
@@ -31,6 +42,13 @@ fi
|
||||
|
||||
echo -e "${GREEN}[信息] Node.js 版本: $(node --version)${NC}"
|
||||
|
||||
# 获取局域网IP
|
||||
LAN_IP=$(get_lan_ip)
|
||||
if [ -z "$LAN_IP" ]; then
|
||||
echo -e "${YELLOW}[警告] 无法获取局域网IP,将只监听本地${NC}"
|
||||
LAN_IP="localhost"
|
||||
fi
|
||||
|
||||
# 检查端口是否被占用
|
||||
if lsof -Pi :4155 -sTCP:LISTEN -t >/dev/null 2>&1; then
|
||||
echo -e "${YELLOW}[警告] 端口 4155 已被占用${NC}"
|
||||
@@ -51,7 +69,22 @@ fi
|
||||
|
||||
# 启动服务器
|
||||
echo -e "${GREEN}[信息] 正在启动服务器...${NC}"
|
||||
echo -e "${GREEN}[信息] 访问地址: http://localhost:4155${NC}"
|
||||
echo
|
||||
echo -e "${GREEN}╔════════════════════════════════════════╗${NC}"
|
||||
echo -e "${GREEN}║ 服务器访问信息 ║${NC}"
|
||||
echo -e "${GREEN}╠════════════════════════════════════════╣${NC}"
|
||||
echo -e "${GREEN}║${NC} 🏠 本地访问:"
|
||||
echo -e "${GREEN}║${NC} ${BLUE}http://localhost:4155${NC}"
|
||||
echo -e "${GREEN}║${NC}"
|
||||
if [ "$LAN_IP" != "localhost" ]; then
|
||||
echo -e "${GREEN}║${NC} 🌐 局域网访问:"
|
||||
echo -e "${GREEN}║${NC} ${BLUE}http://${LAN_IP}:4155${NC}"
|
||||
echo -e "${GREEN}║${NC}"
|
||||
echo -e "${GREEN}║${NC} 📱 移动设备访问:"
|
||||
echo -e "${GREEN}║${NC} ${BLUE}http://${LAN_IP}:4155${NC}"
|
||||
fi
|
||||
echo -e "${GREEN}╚════════════════════════════════════════╝${NC}"
|
||||
echo
|
||||
echo -e "${YELLOW}[提示] 按 Ctrl+C 停止服务器${NC}"
|
||||
echo
|
||||
|
||||
|
||||
Reference in New Issue
Block a user