本节介绍如何在 Linux + 宝塔面板环境下部署 SunPMS 招标采购系统。

前置条件

  • 已安装宝塔面板(https://www.bt.cn
  • PHP 8.2+、MySQL 5.7、Nginx、Composer 2.0+

1. 软件商城安装相关软件

在宝塔面板的「软件商城」中安装以下软件:

  • Nginx(1.10+)
  • MySQL 5.7
  • PHP 8.2
  • Redis
  • Composer 2.0+

2. 安装 PHP 扩展

在 PHP 8.2 的「安装扩展」中安装以下扩展:

  • redis
  • xlswriter
  • sodium
  • fileinfo
  • pcntl

3. 添加站点

在宝塔面板中「添加站点」,填写域名或 IP,选择 PHP 版本为 8.2。

4. 上传并解压项目

将项目压缩包上传到站点根目录,并解压:

# 上传压缩包到站点目录后解压
cd /www/wwwroot/your-site
unzip ecp-purchasing.zip

5. 设置运行目录

在站点设置中,将「运行目录」设置为 /public

6. 开启 Redis 服务

在宝塔面板中启动 Redis 服务,确保缓存功能正常运行。

7. 安装程序

访问站点域名,进入安装向导,按提示完成以下步骤:

  • 环境检测 - 确认所有必需环境已满足
  • 数据库配置 - 填写 MySQL 连接信息
  • 管理员账号设置

8. 邮箱配置(SMTP)

在后台管理面板中配置 SMTP 邮箱服务,用于发送系统通知。

9. Composer 更新 Vendor

cd /www/wwwroot/your-site
composer update

10. Nginx 配置

在站点 Nginx 配置中添加以下内容:

WebSocket 配置

# 在 server 块中添加
location /ws {
    proxy_pass http://127.0.0.1:8282;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Host $host;
}

路由重写

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

11. 默认后台信息

默认后台地址和账户

后台地址:/admin

默认账户:admin

默认密码:安装时设置

12. 配置定时任务

在宝塔面板的「计划任务」中添加以下定时任务:

# 定时器任务(每分钟执行)
php /www/wwwroot/your-site/artisan schedule:run

# WebSocket 服务
php /www/wwwroot/your-site/bin/ecp-timer start -d
php /www/wwwroot/your-site/bin/ecp-workman start -d
php /www/wwwroot/your-site/bin/ecp-queue start -d