参考资料

  1. Fresns 的终端中清理缓存,需要根据具体的缓存类型来执行
  2. OpenResty 本质上是一个集成了 Nginx 与 LuaJIT 的 Web 平台
  3. Fresns 的代理环境配置,核心是让系统在 CDN 或反向代理
  4. Fresns 的 PHP 扩展要求分为 必选 和 按需安装 两类
  5. Fresns 对 Composer 的版本要求很明确:不低于 2.5
  6. 配置 Fresns 的队列进程,核心是使用 Supervisor 守护
  7. Composer 换国内源是提升依赖下载速度最直接的方法
  8. Fresns 的时区配置核心是在 .env 文件中设置 APP_TIMEZONE 参数

Fresns 的 .env 文件是安装成功后才会在根目录自动生成

Fresns 的 .env 文件是安装成功后才会在根目录自动生成的。它集中管理着数据库、应用密钥、调试模式等核心配置。下面是各项配置的详细说明。

📂 应用基础配置

APP_ENV=production          # 运行环境:local(测试)/ production(正式运营)
APP_KEY=                    # 数据加密密钥,可用 php artisan key:generate 重新生成
APP_DEBUG=false             # 是否输出详细报错:调试时改 true,正式运营务必 false
APP_URL=https://your-domain.com  # 你的系统网址,例如 https://discuss.fresns.org
APP_TIMEZONE=Asia/Shanghai  # 时区设置
APP_FOUNDER=1               # 创始人账号 ID(对应 accounts 表的 id 或 aid)

关于 APP_FOUNDER:这个值决定了谁拥有后台最高管理权限。安装时填写的创始人账号 ID 会自动写入,后续如需更换创始人,需要修改这里并清除配置缓存。

🗄️ 数据库配置

DB_CONNECTION=mysql         # 数据库类型:mysql / mariadb / pgsql / sqlsrv / sqlite
DB_HOST=127.0.0.1           # 数据库主机
DB_PORT=3306                # 端口(MySQL 默认 3306,PostgreSQL 常用 5432)
DB_DATABASE=fresns          # 数据库名
DB_USERNAME=fresns          # 数据库用户名
DB_PASSWORD=your_password   # 数据库密码
DB_PREFIX=fs_               # 表前缀,默认 fs_

DB_COLLATION=utf8mb4_0900_ai_ci  # 排序规则,默认 utf8mb4_unicode_520_ci

排序规则选择建议:

  • MySQL 5.7:使用 utf8mb4_unicode_520_ci(默认值)

  • MySQL 8.0:推荐 utf8mb4_0900_ai_ci

🔴 队列与 Redis 配置(可选)

如果不使用 Redis 或异步队列,这部分可以完全不配置,系统会默认使用 sync 同步队列。

QUEUE_CONNECTION=redis      # 队列驱动:sync / redis / database
CACHE_STORE=redis           # 缓存驱动
SESSION_DRIVER=redis        # 会话驱动

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
REDIS_QUEUE=fresns

队列驱动选择:

  • sync:同步执行,无需额外配置(默认)

  • redis:推荐,性能好

  • database:使用数据库驱动,无需额外服务

🇨🇳 中国加速配置(可选)

如果服务器在中国境内,添加以下配置可以加速 Composer 依赖下载:

MIRROR_CODE=cn
HTTP_PROXY=http://market.fresns.cn:1024

注意:配置此项后,不要再使用 Composer 镜像源,只能用 Composer 官方源。

🛡️ 代理环境配置(可选)

如果站点前面有 CDN 或反向代理(如 Cloudflare),需要配置可信任的代理 IP,否则获取到的客户端 IP 可能不准确:

TRUSTED_PROXIES=173.245.48.0/20,103.21.244.0/22,...

多个 IP 段用英文逗号隔开。Cloudflare 的完整 IP 段可在官方文档中找到。

⚠️ 修改后不生效怎么办

修改 .env 后如果配置没有立即生效,是因为系统缓存了配置值。删除缓存文件即可:

rm bootstrap/cache/config.php

或者执行 php artisan config:clear。

💡 其他配置项

.env.example 模板中还包含邮件、AWS、Pusher 等配置项,这些通常在需要对应功能时才填写,日常运营可以忽略。Fresns 的运行时配置(如语言、界面设置等)主要存储在数据库的 configs 表中,通过后台面板管理,不需要直接编辑 .env。

APP_NAME=Fresns
APP_ENV=production
APP_KEY=base64:dsKSdKAV6I4vPFNoWzzRhNtCbsu1nrpV3kAOYcKI7Gw= #
APP_DEBUG=false
APP_URL=https://www.ciilii.com

APP_TIMEZONE=Asia/Shanghai
APP_FOUNDER=1

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=www_madama_cn
DB_USERNAME=www_madama_cn
DB_PASSWORD=3bcrJCtFmrsCWCTK
DB_PREFIX=fs_
DB_COLLATION=utf8mb4_unicode_520_ci

#MIRROR_CODE=cn
#HTTP_PROXY=http://market.fresns.cn:1024


REDIS_HOST=127.0.0.1        #Host
REDIS_PASSWORD=248650         #密码
REDIS_PORT=6379             #端口

CACHE_STORE=redis           #缓存驱动
SESSION_DRIVER=redis        #会话驱动
QUEUE_CONNECTION=redis      #队列驱动
BROADCAST_CONNECTION=redis  #广播驱动
#SESSION_DRIVER=database

OCTANE_SERVER=swoole

Fresns 的 APP_KEY 是应用加密密钥,用于数据加密,需要你自己生成并配置在 .env 文件中。

生成与配置方法

  1. 自动生成:Fresns 在安装过程中会自动为你的站点生成一个安全的 APP_KEY,并写入主程序根目录的 .env 文件。

  2. 手动重新生成:如果你需要重新生成 APP_KEY,可以在项目根目录下运行 Artisan 命令:

    php artisan key:generate

    执行后,.env 文件中的 APP_KEY= 会自动更新为一个新的随机字符串。

重要提醒

请注意区分 APP_KEY 与 API Key:

  • APP_KEY:仅用于服务端加密,是站点自己的配置,不对外公开。

  • API Key:是客户端(如 App、小程序)调用 Fresns API 时使用的密钥,需要在后台“应用中心”创建,并会暴露在客户端请求头中(如 X-Fresns-App-Id)。

如果你需要的是用于客户端测试的 API Key,请告诉我你的具体用途(如网页、App、小程序),我可以帮你查找对应的公开测试密钥。

作者:王壹杰
时间:2026-10-01 16:36:08
来源:https://fresns.ciilii.com/