Skip to main content

服务器配置

¥Server configuration

./config/server.js 文件用于定义 Strapi 应用的服务器配置。

¥The ./config/server.js file is used to define the server configuration for a Strapi application.

提醒

server.js 文件的更改需要重建管理面板。保存修改后的文件后,在终端中运行 yarn buildnpm run build 以实现更改。

¥Changes to the server.js file require rebuilding the admin panel. After saving the modified file run either yarn build or npm run build in the terminal to implement the changes.

可用选项

¥Available options

./config/server.js 文件可以包含以下参数:

¥The ./config/server.js file can include the following parameters:

范围描述类型默认
host

❗️必填
主机名stringlocalhost
port

❗️必填
服务器应运行的端口。integer1337
app.keys

❗️必填
声明会话密钥(基于 相思会议),session 中间件将其用于用户和权限插件以及文档插件。字符串数组undefined
socket在套接字上监听。当提供此选项时,主机和端口是装饰性的,同样在使用此选项时使用 url 生成正确的 URL。此选项对于在不公开端口的情况下运行服务器并在同一台计算机上使用代理服务器(例如 Heroku nginx 构建包)非常有用字符串| 整数/tmp/nginx.socket
emitErrors允许在发生错误时将错误发送到 koa,以便附加自定义逻辑或使用错误报告服务。布尔值false
url服务器的公共 url。许多不同的功能都需要(例如:重置密码、第三方登录提供者等)。还启用代理支持,例如 Apache 或 Nginx,例如:https://mywebsite.com/api。url 可以是相对的,如果是,则使用 http://${host}:${port} 作为基本 url。但建议使用绝对 url。string''
proxy代理配置object
proxy.global为所有外部请求定义代理。如果 Strapi 项目位于转发代理后面,则使用。string
proxy.fetchstrapi.fetch 内发出的所有请求的代理(用于许可证检查、遥测和 webhook)字符串 | ProxyAgent.Options
proxy.http所有(非获取)http 请求的代理string
proxy.https所有(非获取)https 请求的代理string
proxy.koa设置 koa 变量 app.proxy。当 true 时,代理头字段将被信任。布尔值false
cronCron 配置(由 node-schedule 提供支持)object
cron.enabled启用或禁用 CRON 作业 以在特定日期安排作业。布尔值false
cron.tasks声明 CRON 作业 在特定日期运行。object
dirsStrapi 使用的不同目录的路径配置。object
dirs.public自定义公用文件夹的路径。string./public
httpStrapi 使用的 http 服务器的配置object
http.serverOptions传递给 http createServer 的选项http.serverOptions{}
transfer.remote.enabled切换使用 转移特性 的能力布尔值true
logger.startup.enabled切换终端中的启动消息布尔值true
logger.updates.enabled切换有关在终端中更新 strapi 的通知消息布尔值true

配置

¥Configurations

./config/server.js 最低配置需要 hostport 参数进行开发。可以包含附加参数以实现完整配置。

¥The ./config/server.js minimal configuration requires the host and port parameters for development. Additional parameters can be included for a full configuration.

✏️ 注意

环境配置(即使用 env() 辅助程序)不需要包含所有值,只要它们存在于默认 ./config/server.js 中即可。

¥Environmental configurations (i.e. using the env() helper) do not need to contain all the values so long as they exist in the default ./config/server.js.

使用任何新项目创建的默认配置至少应包括以下内容:

¥The default configuration created with any new project should at least include the following:

./config/server.js
module.exports = ({ env }) => ({
host: env('HOST', '0.0.0.0'),
port: env.int('PORT', 1337),
app: {
keys: env.array('APP_KEYS'),
},
});