配置
以下流程面向 Linux 开发环境。
1. 应用名称
将项目文件夹(即应用名称)重命名为仅使用小写字母、数字和下划线。
2. 配置文件
在应用根目录下复制示例配置文件:
cp config/sample.json config/_development.json
对于生产环境,请改用:
cp config/sample.json config/_production.json
然后,将 JSON 根部的 name 属性改为第 1 步中选择的应用名称。
项目中已经存在
config/_development.js和config/_production.js文件,用于动态/编程式配置——通常不需要改动它们;需要编辑的是对应的.json文件。
3. 数据库
CLUAR 需要连接到 PostgreSQL 数据库。在此了解如何配置。
在 config/_development.json(或 _production.json)中,找到 db.default 并替换为你的数据库信息:
"db": {"default": {
"password": "Your-DB-SeCr3t-Her3",
"engine": "pg",
"port": "5432",
"host": "localhost",
"name": "cluar",
"username": "cluar"
}}
4. JWT 密钥
在 auth.jwt.secret 中,定义一个包含 32 个字符 的随机密钥,用于保障身份验证安全:
"auth": {
"jwt": {
"enabled": true,
"secret": "ThisSecretMustContains32Chars!!!",
"expires": {
"access": 1440,
"refresh": 1440
}
}
}
建议使用随机代码生成工具生成该密钥。
5. Altcha(reCAPTCHA 的替代方案)
CLUAR 支持 Altcha——一种基于工作量证明(proof-of-work)的 Google reCAPTCHA 替代方案,不依赖外部服务,也不收集访问者数据。它用于登录和用户注册。
在 .json 的不同位置有两个开关:
"auth": {
"altcha": {
"enabled": false,
"admin": {
"enabled": false
}
}
}
auth.altcha.enabled— 在服务器端(Netuno)启用 Altcha 验证。若未将其设为true,即使网站上显示 Altcha,也不会进行验证。auth.altcha.admin.enabled— 还会在 Netuno 后台(端口9000)的登录中启用 Altcha,该登录与网站登录相互独立。
"settings": {
"cluar": {
"website": {
"auth": {
"altcha": {
"enabled": false,
"admin": {
"enabled": false
}
}
}
}
}
}
settings.cluar.website.auth.altcha— 对应网站端的同一选项:控制是否在网站的登录/注册表单中显示 Altcha 小部件。
要让 Altcha 生效,需要在两端都启用
enabled: true——服务器端需要验证,网站端需要显示小部件。
6. CLUAR 设置
在 settings.cluar 中,调整网站配置:
"settings": {
"cluar": {
"website": {
"url": "http://localhost:3000",
"name": "网站名称",
"analytics": null,
"mapbox": {
"dark": false,
"accessToken": null
},
"services": {
"api": "http://localhost:9000/services/"
},
"auth": {"providers": {
"discord": false,
"facebook": false,
"github": false,
"google": false
}}
},
"uglifyjs": false
}
}
website.url— 网站运行的 URL。website.name— 网站名称。website.services.api— 网站所调用的 Netuno 服务 API 的 URL。website.auth.providers— 启用/禁用社交登录方式(Discord、Facebook、GitHub、Google)。uglifyjs— 控制是否压缩网站代码。
7. 网站自动启动(可选)
网站可以通过 commands 列表随 Netuno 服务器自动启动:
"commands": [
{
"path": "website",
"command": "bun run dev",
"install": "bun install",
"enabled": true
}
]
只需将 "path": "website" 条目中的 enabled 设为 true。这样,运行 ./netuno server app=cluar 时,网站会一并启动,无需在另一个终端手动启动。
下一步
应用配置完成后,请前往执行。