NIUCLOUD LITE AI开发文档--系统部署

环境要求​

目录​


1. 功能说明​

概述​

本文档详细说明 Niucloud 系统运行所需的环境要求,包括服务器配置、软件版本、依赖组件等。

适用场景​

  • 系统部署前的环境准备
  • 开发环境搭建
  • 生产环境配置
  • 服务器选购参考

2. 设计思路​

技术选型​

组件 最低版本 推荐版本 说明
PHP 8.0 8.0 后端运行环境
MySQL 5.7 8.0+ 数据存储
Redis 5.0 6.0+ 缓存服务
Nginx 1.18 1.20+ Web服务器

3. 环境要求详情​

3.1 服务器配置​

最低配置​
配置项 要求
CPU 2核
内存 4GB
硬盘 50GB SSD
带宽 3Mbps
推荐配置​
配置项 要求
CPU 4核
内存 8GB
硬盘 100GB SSD
带宽 5Mbps

3.2 PHP 环境​

必需扩展​
复制代码
- PDO
- PDO_MySQL
- Redis
- Mbstring
- OpenSSL
- JSON
- Fileinfo
- GD / Imagick
- Zip
- XML
- BCMath
- Curl
PHP 配置建议​
复制代码
; php.ini 推荐配置
memory_limit = 512M
upload_max_filesize = 50M
post_max_size = 50M
max_execution_time = 300
max_input_vars = 3000
date.timezone = Asia/Shanghai

3.3 MySQL 配置​

推荐配置​
复制代码
; my.cnf 推荐配置
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
max_connections = 500
innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M

3.4 Nginx 配置​

伪静态规则​
复制代码
location / {
    if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php?s=$1 last;
        break;
    }
}

3.5 目录权限​

复制代码
项目根目录需要以下权限:
- runtime/      777
- public/upload/ 777
- public/static/ 755
- app/          755
- config/       755

3.6 开发环境工具​

工具 用途 下载地址
Git 版本控制 https://git-scm.com
Composer PHP依赖管理 https://getcomposer.org
Node.js 前端构建 https://nodejs.org
NPM 前端依赖管理 随Node.js安装

4. 常见问题​

Q1: PHP 扩展安装失败​

问题现象: 安装 PHP 扩展时提示找不到或安装失败。

解决方案:

复制代码
# Ubuntu/Debian
sudo apt-get install php8.0-redis php8.0-gd php8.0-zip

# CentOS
sudo yum install php-redis php-gd php-zip

# 重启 PHP 服务
sudo systemctl restart php-fpm

Q2: 上传文件大小限制​

问题现象: 上传大文件时提示文件过大。

解决方案: 修改 php.ini 中的以下配置:

复制代码
upload_max_filesize = 50M
post_max_size = 50M

Q3: 内存不足错误​

问题现象: 运行过程中出现 Allowed memory size exhausted 错误。

解决方案:

复制代码
; 增加 PHP 内存限制
memory_limit = 512M

; 或者修改代码中的临时内存限制
ini_set('memory_limit', '512M');

修订记录​

版本 日期 修订人 修订内容
v1.0 2026-04-08 Niucloud Team 初始版本

宝塔部署​

目录​


1. 功能说明​

概述​

本文档详细介绍如何使用宝塔面板部署 Niucloud 系统,宝塔面板是国内流行的服务器管理工具,提供可视化的操作界面。

适用场景​

  • 生产环境部署
  • 测试环境搭建
  • 快速部署需求

2. 设计思路​

部署架构​

复制代码
┌─────────────────────────────────────────┐
│              用户访问                    │
└─────────────────┬───────────────────────┘
                  │
┌─────────────────▼───────────────────────┐
│              Nginx                      │
│         (反向代理/静态资源)              │
└─────────────────┬───────────────────────┘
                  │
┌─────────────────▼───────────────────────┐
│              PHP-FPM                    │
│           (PHP 处理)                     │
└─────────────────┬───────────────────────┘
                  │
┌─────────────────▼───────────────────────┐
│         MySQL / Redis                   │
│        (数据存储/缓存)                   │
└─────────────────────────────────────────┘

3. 部署流程​

3.1 安装宝塔面板​

复制代码
# CentOS
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

# Ubuntu/Debian
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

3.2 安装运行环境​

在宝塔面板中安装以下软件:

  • Nginx 1.20+
  • PHP 8.0
  • MySQL 5.7+
  • Redis
  • phpMyAdmin(可选)

3.3 创建网站​

  1. 登录宝塔面板
  2. 点击「网站」→「添加站点」
  3. 填写域名信息
  4. 选择 PHP 版本 8.0
  5. 网站目录 :选择项目的 backend/public 目录
  6. 创建数据库(记录数据库名、用户名、密码)

3.4 上传代码​

复制代码
# 方式1:通过 Git 拉取
# 注意:网站目录为 backend/public,代码需上传到上级目录
cd /www/wwwroot/
git clone https://gitee.com/niucloud-team/niucloud-lite-ai your_domain

# 方式2:通过宝塔文件管理器上传
# 将代码压缩包上传到 /www/wwwroot/ 目录并解压
# 确保最终目录结构为 /www/wwwroot/your_domain/backend/public

3.5 配置伪静态​

在宝塔面板中选择网站 → 设置 → 伪静态,添加以下规则:

复制代码
location / {
    if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php?s=$1 last;
        break;
    }
}

location ~* \.(gif|jpg|jpeg|png|css|js|ico|woff|woff2|ttf|svg|eot)$ {
    expires 30d;
    add_header Cache-Control "public, immutable";
}

location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
}

3.6 设置目录权限​

复制代码
# 设置目录权限
chmod -R 755 /www/wwwroot/your_domain/backend
chmod -R 777 /www/wwwroot/your_domain/backend/runtime
chmod -R 777 /www/wwwroot/your_domain/backend/public/upload

3.7 安装依赖+构建前端​

复制代码
cd /www/wwwroot/your_domain/frontend

# 安装 PHP 依赖
composer install --no-dev --optimize-autoloader

# 安装前端依赖(Admin)
cd admin
npm install
npm run build

# 安装前端依赖(UniApp)
cd ../uni-app
npm install
npm run build:h5

# 安装前端依赖(Web)
cd ../web
npm install
npm run build

3.8 复制前端构建结果到 backend 目录​

复制代码
# 复制前端构建结果到 backend 目录
cp -r admin/dist /www/wwwroot/your_domain/backend/public/admin
cp -r uni-app/dist /www/wwwroot/your_domain/backend/public/wap
cp -r web/dist /www/wwwroot/your_domain/backend/public/web

3.9 配置数据库​

  1. 创建数据库(已在创建网站时完成)

  2. 导入初始 SQL 文件

  3. 修改数据库配置文件 .env

    DB_HOST=localhost
    DB_PORT=3306
    DB_DATABASE=your_database
    DB_USERNAME=your_username
    DB_PASSWORD=your_password

    REDIS_HOST=127.0.0.1
    REDIS_PORT=6379
    REDIS_PASSWORD=

3.9 配置计划任务​

在宝塔面板中添加计划任务:

复制代码
# 每分钟执行一次
* * * * * cd /www/wwwroot/your_domain && php think schedule:run >> /dev/null 2>&1

3.10 配置 SSL(可选)​

  1. 在宝塔面板中选择网站 → SSL
  2. 申请 Let's Encrypt 免费证书
  3. 开启强制 HTTPS

3.11 启动服务+访问网站​

  1. 启动 Nginx 服务

  2. 启动 PHP-FPM 服务

  3. 启动 MySQL 服务

  4. 启动 Redis 服务

    启动服务

    bt nginx start
    bt php-fpm start
    bt mysql start
    bt redis start

网站地址:

  • 后台API接口:http://your_domain/adminapi
  • API 接口:http://your_domain/api
  • Admin 管理:http://your_domain/admin
  • UniApp H5:http://your_domain/wap
  • Web 开发:http://your_domain/web

4. 常见问题​

Q1: 网站访问 500 错误​

问题现象: 访问网站显示 500 Internal Server Error。

解决方案:

  1. 检查 PHP 版本是否为 8.0+
  2. 检查目录权限是否正确
  3. 查看 runtime/log/ 下的错误日志
  4. 确保 .env 文件配置正确

Q2: 静态资源无法加载​

问题现象: CSS、JS 文件 404 错误。

解决方案:

  1. 检查伪静态配置是否正确
  2. 确认 public 目录为网站根目录
  3. 检查文件是否上传完整

Q3: 数据库连接失败​

问题现象: 提示数据库连接错误。

解决方案:

  1. 检查 .env 中的数据库配置
  2. 确认数据库用户权限
  3. 检查 MySQL 服务是否运行

Q4: 上传文件失败​

问题现象: 上传文件时提示失败或文件损坏。

解决方案:

复制代码
# 检查上传目录权限
chmod -R 777 /www/wwwroot/your_domain/backend/public/upload

# 修改 PHP 上传限制
# 在宝塔面板 → PHP 设置 → 配置修改
upload_max_filesize = 50M
post_max_size = 50M

本地部署​

目录​


1. 功能说明​

概述​

本文档详细介绍如何在本地环境部署 Niucloud 系统,适用于开发调试和学习使用。

适用场景​

  • 本地开发环境搭建
  • 功能测试
  • 学习研究

2. 设计思路​

本地环境架构​


3. 部署流程​

3.1 Windows 环境部署​

使用 phpStudy(小皮面板)​
  1. 下载安装 phpStudy

  2. 启动环境

    • 启动 Apache 或 Nginx
    • 启动 MySQL
    • 启动 Redis
  3. 创建网站

    • 点击「网站」→「创建网站」
    • 域名:niucloud.test(或 localhost)
    • 根目录:选择项目 backend/public 目录
    • PHP 版本:8.0
  4. 创建数据库

    • 点击「数据库」→「创建数据库」
    • 记录数据库名、用户名、密码
  5. 配置伪静态

Nginx 配置:

复制代码
location / {
    if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php?s=$1 last;
        break;
    }
}

Apache 配置(.htaccess):

复制代码
<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

3.2 安装项目依赖​

复制代码
# 进入项目目录(根据实际情况修改)
cd d:\phppro\niucloud-lite

# 安装 PHP 依赖(根据实际情况修改)
composer install

# 复制环境配置文件(根据实际情况修改)
copy .env.example .env

# 编辑 .env 文件,配置数据库和redis连接(根据实际情况修改)

3.3 配置环境变量​

编辑 .env 文件(根据实际情况修改):

复制代码
APP_DEBUG=true
APP_KEY=your-random-key

DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=niucloud_lite
DB_USERNAME=root
DB_PASSWORD=root

REDIS_HOST=127.0.0.1
REDIS_PORT=6379

3.4 导入数据库​

  1. 找到数据库文件

    • 路径:'doc\sql\niucloud_lite.sql`
  2. 导入方式

方法一:使用 phpStudy 面板导入

  • 点击「数据库」→「管理」
  • 选择对应的数据库
  • 点击「导入」→ 选择 niucloud_lite.sql 文件
  • 等待导入完成

方法二:使用命令行导入

复制代码
# 进入项目目录(根据实际路径)
cd d:\phppro\niucloud-lite

# 导入数据库
mysql -u root -p niucloud_lite < doc/sql/niucloud_lite.sql

3.5 启动前端开发服务器​

复制代码
# Admin 端
cd admin
npm install
npm run dev

# UniApp 端
cd uni-app
npm install
npm run dev:h5

# Web 端
cd web
npm install
npm run dev

3.6 访问系统​


4. 常见问题​

Q1: 端口冲突​

问题现象: 启动服务时提示端口被占用。

解决方案:

复制代码
# 查找占用端口的进程
netstat -ano | findstr :80

# 结束进程
taskkill /PID 进程ID /F

# 或修改 phpStudy 端口为 8080

Q2: 数据库连接失败​

问题现象: 提示 Connection refused 或 Access denied。

解决方案:

  1. 确认 MySQL 服务已启动
  2. 检查 .env 中的数据库配置
  3. 确认数据库用户存在且有权限
  4. 尝试使用 root 用户连接

Q3: Composer 安装失败​

问题现象: Composer 安装依赖时超时或失败。

解决方案:

复制代码
# 切换国内镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

# 或使用代理
set HTTP_PROXY=http://proxy.example.com:8080
composer install

Q4: 前端构建失败​

问题现象: npm install 或 npm run dev 报错。

解决方案:

复制代码
# 清除缓存
npm cache clean --force

# 使用淘宝镜像
npm config set registry https://registry.npmmirror.com

# 重新安装
rm -rf node_modules
npm install

Q5: 跨域问题​

问题现象: 前端调用 API 时出现跨域错误。

解决方案:

  1. 开发环境下,前端配置代理
  2. 或在后端配置跨域中间件
  3. 确保前后端使用相同的域名访问
相关推荐
多弗朗皮卡丘1 小时前
C++异常
开发语言·c++·异常
米糕闯编程1 小时前
鱼香ros2(十七)C++小海龟巡逻
开发语言·c++·机器人·ros2·服务·小海龟
郝学胜-神的一滴1 小时前
NumPy深度解析|Python数值计算的基石,告别低效for循环
开发语言·人工智能·python·程序人生·numpy·量化投资
\光辉岁月/2 小时前
15.JavaSE-网络
java·开发语言·网络
兰亭妙微UI设计公司2 小时前
兰亭妙微软件界面设计公司的解锁按钮设计10大密码
开发语言·前端·javascript
人邮异步社区2 小时前
C语言好学,还是Python好学?
c语言·开发语言·python
栈帧之外2 小时前
【C++】红黑树实现
开发语言·c++
程序员老陆2 小时前
C++中同一个回调函数被多个设备并发调用:并发问题不在“函数”,而在“状态”
开发语言·c++·程序设计
wangchunyu1142 小时前
JDK8新特性实战(Lambda、Stream、Optional)
java·开发语言