🌸
💫
跳转到内容
非官方中文文档 彩虹工具箱

系统配置

⚙️ 系统配置

详细配置指南,让 Toolbox 更符合你的需求

Toolbox 的主要配置文件位于项目根目录:

toolbox/
├── .env # 环境配置文件(重要)
├── config/
│ ├── app.php # 应用配置
│ ├── cache.php # 缓存配置
│ ├── database.php # 数据库配置
│ ├── session.php # 会话配置
│ └── view.php # 视图配置
└── ...

.env 文件是 Toolbox 最重要的配置文件,包含数据库、缓存等敏感信息。

# 应用模式(debug 或 production)
APP_DEBUG = false
# 应用名称
APP_NAME = Toolbox
# 应用版本
APP_VERSION = 1.0.0
# 数据库类型
DB_TYPE = mysql
# 数据库主机
DB_HOST = localhost
# 数据库端口
DB_PORT = 3306
# 数据库名
DB_NAME = toolbox
# 数据库用户名
DB_USER = toolbox
# 数据库密码
DB_PASS = your_password
# 数据库编码
DB_CHARSET = utf8mb4
# 缓存类型(file 或 redis)
CACHE_TYPE = file
# Redis 配置(当 CACHE_TYPE=redis 时生效)
REDIS_HOST = 127.0.0.1
REDIS_PORT = 6379
REDIS_PASSWORD =
REDIS_SELECT = 0
# 会话驱动(file 或 redis)
SESSION_TYPE = file
# 会话过期时间(秒)
SESSION_EXPIRE = 7200

登录后台后,可以在”系统配置”页面进行可视化配置:

配置项说明示例
网站标题浏览器标签页显示的标题我的工具箱
网站副标题首页显示的大标题在线工具集合
关键字SEO 关键字工具箱,在线工具,实用工具
网站描述SEO 描述提供各种实用的在线工具…

Toolbox 支持多模板切换:

  1. 进入后台 → 系统配置
  2. 找到”模板选择”下拉框
  3. 选择喜欢的模板
  4. 保存配置

支持第三方登录(QQ、微信):

# 接口地址
oauth_appurl = https://oauth.example.com/
# 应用 ID
oauth_appid = your_app_id
# 应用密钥
oauth_appkey = your_app_key
# 开启 QQ 登录
oauth_openqq = 1
# 开启微信登录
oauth_openwx = 1

配置极验滑动验证码 V4:

# 极验 ID
captcha_id = your_captcha_id
# 极验密钥
captcha_key = your_captcha_key

配置了 Yapi Token 后,部分工具(如 ICP 查询、QQ 等级查询)可以使用 Yapi 服务:

yapi_token = your_yapi_token

用于 ICP 备案查询、QQ 等级查询等工具:

# 接口地址(必须以 / 结尾)
qqapi_url = https://qqapi.example.com/
# 接口密钥
qqapi_key = your_api_key

可以配置自定义 CDN 源加速静态资源:

# CDNJS 源
cdn_cdnjs = https://cdnjs.cloudflare.com/ajax/libs/
# NPM CDN 源
cdn_npm = https://unpkg.com/

编辑 config/database.php

return [
'default' => 'mysql',
'connections' => [
'mysql' => [
'type' => 'mysql',
'hostname' => env('DB_HOST', 'localhost'),
'database' => env('DB_NAME', 'toolbox'),
'username' => env('DB_USER', 'root'),
'password' => env('DB_PASS', ''),
'hostport' => env('DB_PORT', '3306'),
'params' => [
// 连接参数
PDO::ATTR_CASE => PDO::CASE_NATURAL,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
],
'charset' => 'utf8mb4',
'prefix' => '',
'debug' => true,
'deploy' => 0,
'rw_separate' => false,
'master_num' => 1,
'slave_no' => '',
'fields_strict' => true,
'break_reconnect' => false,
'trigger_sql' => true,
'fields_cache' => false,
],
],
];
  1. 定期优化表

    OPTIMIZE TABLE table_name;
  2. 添加索引

    -- 为常用查询字段添加索引
    ALTER TABLE plugin ADD INDEX idx_category (category_id);
    ALTER TABLE plugin ADD INDEX idx_enable (enable);
  3. 定期备份

    Terminal window
    mysqldump -u root -p toolbox > backup.sql

默认使用文件缓存,无需额外配置。

Terminal window
# Ubuntu/Debian
sudo apt install redis-server
# CentOS/RHEL
sudo yum install redis
# 启动 Redis
sudo systemctl start redis
sudo systemctl enable redis

编辑 .env

CACHE_TYPE = redis
REDIS_HOST = 127.0.0.1
REDIS_PORT = 6379
REDIS_PASSWORD =
REDIS_SELECT = 0
Terminal window
# 连接 Redis
redis-cli
# 测试
127.0.0.1:6379> ping
PONG
缓存类型读取速度写入速度适用场景
File⭐⭐⭐⭐小型网站
Redis⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐中大型网站
  1. 使用强密码

    • 至少 8 位字符
    • 包含大小写字母、数字、特殊符号
    • 定期更换密码
  2. 启用验证码

    • 配置极验验证码
    • 防止暴力破解
  3. 定期查看日志

    • 检查异常登录
    • 查看 runtime/log/ 目录
  1. 最小权限原则

    -- 只授予必要权限
    GRANT SELECT, INSERT, UPDATE, DELETE ON toolbox.* TO 'toolbox'@'localhost';
  2. 使用独立用户

    • 不要和系统其他应用共用数据库账号
  3. 定期更换密码

    ALTER USER 'toolbox'@'localhost' IDENTIFIED BY 'new_password';
Terminal window
# 设置正确的文件权限
chown -R www-data:www-data /var/www/toolbox
chmod -R 755 /var/www/toolbox
chmod -R 777 /var/www/toolbox/runtime
# 禁止访问敏感文件
chmod 600 /var/www/toolbox/.env

编辑 php.ini

opcache.enable = 1
opcache.enable_cli = 1
opcache.memory_consumption = 256
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
opcache.revalidate_freq = 60
opcache.fast_shutdown = 1
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_types text/plain text/css text/xml text/javascript application/json application/javascript application/xml+rss application/rss+xml font/truetype font/opentype application/vnd.ms-fontobject image/svg+xml;
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/css text/javascript application/javascript application/json
</IfModule>

将静态资源放到 CDN 加速:

  1. public/static/ 目录上传到 CDN
  2. 在系统配置中修改 CDN 地址
  3. 刷新 CDN 缓存

创建 backup.sh

#!/bin/bash
# 备份目录
BACKUP_DIR="/backup/toolbox"
DATE=$(date +%Y%m%d_%H%M%S)
# 创建备份目录
mkdir -p $BACKUP_DIR
# 备份数据库
mysqldump -u root -p'your_password' toolbox > $BACKUP_DIR/db_$DATE.sql
# 备份文件
tar -czf $BACKUP_DIR/files_$DATE.tar.gz -C /var/www toolbox
# 删除 7 天前的备份
find $BACKUP_DIR -name "*.sql" -mtime +7 -delete
find $BACKUP_DIR -name "*.tar.gz" -mtime +7 -delete
echo "Backup completed: $DATE"

添加到定时任务:

Terminal window
# 每天凌晨 3 点执行备份
0 3 * * * /path/to/backup.sh >> /var/log/toolbox_backup.log 2>&1

⚙️ 配置完成!

现在 Toolbox 已经按照你的需求配置好了~