期货交易系统部署一 — 数据库及web

Windows 服务器宝塔部署全流程指南

一、Windows 服务器宝塔安装

1. 前置准备

  • 系统要求:Windows Server 2019 及以上(推荐 2019/2022),确保为纯净系统(未预装 IIS/Apache/MySQL/PHP)
  • 网络与权限:服务器连通外网,以 Administrator 管理员身份操作
  • 端口放行:云服务商控制台安全组放行 80-91、9000-9010、9920、9930、22210、22211、22220、22221

2. 安装步骤

  1. 下载安装包:访问 宝塔官网,获取 Windows 版安装包
  2. 解压安装:解压 BtSoft.zip,双击 install.batBtSoft.exe 运行
  3. 选择安装模式:推荐自定义安装,可修改安装目录,勾选 "开机自启动",点击 "一键安装"
  4. 记录信息:安装完成后,复制面板地址(http:// 服务器 IP:8888)、默认账号、密码 保存
  5. 登录与绑定:浏览器访问面板地址,登录后绑定宝塔账号(需实名认证)
  6. 安装运行环境:一键安装推荐套件(Nginx + PHP + MySQL + phpMyAdmin)

3. 关键检查

  • 确认面板服务正常运行,Windows 防火墙已放行上述端口
  • 登录软件商店,检查 组件是否安装成功

二、数据库导入

1. 新建数据库(交易数据库和行情数据库)

  1. 进入宝塔面板「数据库」模块,点击「添加数据库」
  2. 填写信息:
    • 数据库名:建议小写 + 下划线(如 finance_db
    • 用户名:避免使用 root(如 finance_user
    • 密码:设置强密码(大小写 + 数字 + 符号,如 Fin@2026Db
    • 权限:勾选「所有权限」
  3. 点击「提交」,完成数据库创建

2. 导入 SQL 文件

常规导入(小文件)
  1. 找到目标数据库,点击「管理」进入 phpMyAdmin
  2. 选择左侧数据库,点击「导入」,选择本地 .sql.gz 压缩包
  3. 点击「执行」,等待底部提示 "导入成功"

3. 常见问题排查

  • 导入失败:检查 SQL 语法、数据库版本兼容性、用户权限
  • 超时 / 断连:优先使用命令行导入,或拆分 SQL 文件

三、网站配置

1. 添加站点

  1. 进入宝塔面板「网站」模块,点击「添加站点」
  2. 基础配置:
    • 域名:填写已备案域名(如 www.finance-app.com),本地测试可填 IP 或自定义域名
    • 根目录:默认 www/wwwroot/域名,可自定义。
    • 程序类型:PHP
    • 数据库:选择已创建的数据库(如 finance_db),填写账号密码
  3. 点击「提交」,完成站点创建

2. 源码部署

  1. 进入站点根目录,通过「文件上传」功能上传项目源码包

  2. 选中压缩包,点击「解压」,覆盖默认文件

  3. 配置文件修改:编辑数据库连接文件 database.php,填写正确的数据库信息:

    php 复制代码
     // 数据库类型
        'type'            => 'mysql',
        // 服务器地址
        'hostname'        => '127.0.0.1',
        // 数据库名
        'database'        => '*****',
        // 用户名
        'username'        => '*****',
        // 密码
        'password'        => '*****',
        // 端口
        'hostport'        => '*****',

3. 核心配置

域名与 SSL
  1. 域名解析:在域名服务商后台,添加 A 记录指向服务器公网 IP
  2. SSL 证书:进入站点「设置」→「SSL」,选择「Let's Encrypt 免费证书」,申请并开启强制 HTTPS
伪静态

伪静态:进入站点「设置」→「伪静态」,选择对应框架规则ThinkPHP

性能与安全
  1. 运行目录:设置为 public
  2. 并发与超时:在站点「设置」→「流量限制」,调整并发数和超时时间(适配金融数据高并发场景)
  3. 安全加固:开启「防跨站攻击」

4. 测试访问

  1. 浏览器输入域名,检查网站是否正常加载
  2. 测试数据库连接:提交表单、查询数据,确认数据读写正常
相关推荐
湮w3 天前
JavaWeb(三)JavaScript详细讲解
java·javascript·web
还是鼠鼠4 天前
AI掘金头条新闻系统 (Toutiao News)-缓存相关推荐新闻
后端·python·mysql·fastapi·web
曲幽4 天前
从卡顿到丝滑:FastAPI 调用外部 API 的正确姿势(httpx 实战)
python·fastapi·web·async·httpx·client·await·requests·aiohttp
还是鼠鼠7 天前
AI掘金头条新闻系统 (Toutiao News)-缓存新闻详情
后端·python·mysql·fastapi·web
筱璦8 天前
量化交易系统源码可售
区块链·交易·期货·期货交易
曲幽13 天前
你的REST接口还在“过度投喂”数据吗?——FastAPI + GraphQL实战避坑指南
python·fastapi·web·graphql·route·cors·rest·strawberry
带刺的坐椅15 天前
Spring Boot → Solon 注解迁移实战指南:一张对照表说清楚
java·springboot·web·solon
曲幽19 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
曲幽20 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
llz_11225 天前
web-第四次课后作业
前端·spring boot·web