配置¶
所有的设置都存储在 settings.py 中(就像 Django 通常那样)。
备注
更改这些设置中的任意一项后,您需要重新启动 Weblate—包括 WSGI 和 Celery 进程。
在它作为 mod_wsgi 运行的情况下,需要重新启动 Apache,来重新加载配置。
参见
另请查阅 Django 的文档 了解配置 Django 自身的参数。
ADMINS_CONTACT¶
配置联络表单向何处发送电子邮件。如未配置,将使用来自 ADMINS 的电子邮件地址。
将这个作为电子邮件地址列表进行配置:
ADMINS_CONTACT = ["admin@example.com", "support@example.com"]
ALLOWED_ASSET_DOMAINS¶
Added in version 5.14.
配置允许哪些域名获取 Weblate 中的资产。
这通过阻止加载来自不受信任资源的资产增强安全性。资产由 Weblate 服务器下载一次并在本地存储,而非直接从外部域名提供给用户。
在 Weblate 遵循此规则之前,允许列表将应用于初始 URL 和每个 HTTP 重定向目标。重定向到此允许列表之外的主机将被拒绝。
预期的是主机名/域名列表。可以使用完全合格的名称(如 www.example.com)或在名称前加上英文句号作为匹配所有子域名的通配符(如 .example.com 会匹配 cdn.example.com 或 static.example.com)。
默认为 ["*"],允许所有域。
示例
ALLOWED_ASSET_DOMAINS = [
# Allows only cdn.anotherdomain.org
"cdn.anotherdomain.org",
# Allows example.com and all its subdomains
".example.com",
]
当前,这应用在下列地方:
截屏上传,见 屏幕截图和可视化上下文
JavaScript 本地化 CDN 附加组件的远程 HTML 下载
ALLOWED_MACHINERY_DOMAINS¶
配置在项目级机器翻译配置中明确允许哪些自定义机器翻译服务域名。
此设置仅适用于机器翻译服务,不会影响 ALLOWED_ASSET_DOMAINS。
预期的是主机名/域名列表。可以使用完全合格的名称或在名称前加上英文句号作为匹配所有子域名的通配符。
默认为 []。
允许列表对项目管理的机器翻译服务的影响体现在两个方面:一是在出站验证期间允许配置的端点,二是在决定是否可以向用户显示远程提供商错误详情或响应正文时将匹配主机标记为可信。对于直接连接,运行时检查仍会拒绝解析为私有或非公开地址的目标。使用 HTTP(S) 代理时,运行时验证将回退到主机名验证,并且不会执行相同的本地 DNS 或对等 IP 检查。
ALLOWED_ASSET_SIZE¶
Added in version 5.14.
配置获取 Weblate 资产的大小限制。默认为 10 MB。
ASSET_PRIVATE_ALLOWLIST¶
Added in version 2025.5.
Defines hostnames or domains exempt from ASSET_RESTRICT_PRIVATE
for remote asset downloads that enforce private-target checks. Entries follow
Django host matching semantics, so values such as assets.internal.example
or .internal.example can be used.
This does not replace ALLOWED_ASSET_DOMAINS; remote assets must
still match the asset domain allowlist.
默认配置:
ASSET_PRIVATE_ALLOWLIST = []
ASSET_RESTRICT_PRIVATE¶
Added in version 2025.5.
Reject remote asset URLs pointing to internal or non-public addresses unless
the target host is included in ASSET_PRIVATE_ALLOWLIST. On by
default.
When enabled, hostnames that cannot be resolved during validation are rejected
unless they are explicitly included in ASSET_PRIVATE_ALLOWLIST.
This currently applies to screenshot URL uploads and remote HTML downloads for
the JavaScript 本地化 CDN add-on.
ALTCHA_COST¶
Added in version 5.18.
Argon2id time cost for the ALTCHA proof-of-work challenge. Defaults to 3.
Replaces ALTCHA_MAX_NUMBER, which applied to the removed ALTCHA widget v2.
ALTCHA_MEMORY_COST¶
Added in version 5.18.
Argon2id memory cost in KiB. Defaults to 65536.
ALTCHA_PARALLELISM¶
Added in version 5.18.
Argon2id parallelism factor. Defaults to 1.
ANONYMOUS_USER_NAME¶
未登录用户的用户名。
参见
AUDITLOG_EXPIRY¶
Weblate 将保留包含有关账号活动信息的审核日志的最长天数。
默认为 180 天。
AUTH_LOCK_ATTEMPTS¶
应用速率限制之前,认证尝试失败的最大次数。
当前,这应用在后面的位置:
登录。删除账户密码,防止用户不请求新的密码而登录。
密码重置。防止发出新的电子邮件,避免向用户发出太多密码重置尝试的垃圾电子邮件。
默认为 10。
参见
AUTO_UPDATE¶
以每天的频率更新所有仓库。
提示
在不使用 通知钩子 来自动更新 Weblate 仓库的情况下有用。
备注
除了字符串选项还存在开关选项,用于向后兼容。
选项有:
"none"不进行每日更新。
"remote"也是False只进行远程更新。
"full"也是True更新远程,并合并工作副本。
备注
这需要 使用 Celery 的后台任务 工作,并在重启后生效。
AVATAR_URL_PREFIX¶
构成头像 URL 的前缀为:${AVATAR_URL_PREFIX}/avatar/${MAIL_HASH}?${PARAMS}。已知后面的服务工作:
- Gravatar(默认),根据 https://gravatar.com/
AVATAR_URL_PREFIX = 'https://www.gravatar.com/'- Libravatar,根据 https://www.libravatar.org/
AVATAR_URL_PREFIX = 'https://www.libravatar.org/'
参见
AUTH_TOKEN_VALID¶
身份认证令牌和密码重置电子邮件中临时密码的有效时间。以秒为单位,默认为 172800(2 天)。
AUTH_PASSWORD_DAYS¶
Weblate 拒绝用户重复使用之前用过的密码的情况要持续多少天。
检查是基于审计日志进行的,AUDITLOG_EXPIRY 需要至少和这个一样。
备注
Weblate 2.15 版本之前的密码更改不遵从这个原则。
默认为 180 天。
AUTOFIX_LIST¶
当存储字符串时应用自动修复列表。
备注
向实现 autofixer 接口的 Python 类提供一个完全合格的路径。
自动修正 描述了可用的修复。
可以选择使用哪一个:
AUTOFIX_LIST = (
"weblate.trans.autofixes.whitespace.SameBookendingWhitespace",
"weblate.trans.autofixes.chars.ReplaceTrailingDotsWithEllipsis",
)
BACKGROUND_TASKS¶
Added in version 4.5.2.
定义应为部件触发冗长维护任务的频率。
现在这个控件:
可能的选项:
monthly(这是默认设置)weeklydailynever
备注
当 Weblate 包含数千个部件时,不建议增加频率。
BASIC_LANGUAGES¶
Added in version 4.4.
提供给用户开始新的翻译的语言列表。当未指定时,使用内建列表(其中包括所有常用的语言,但没有特定国家/地区的变体)。
这只是限制了非特权用户将不想要的语言添加进来。项目管理员仍然被给出 Weblate 中定义的所有语言选择。
备注
这对 Weblate 并不定义新的语言,它只在数据库中筛选了现有的那些。
示例:
BASIC_LANGUAGES = {"cs", "it", "ja", "en"}
参见
BORG_EXTRA_ARGS¶
Added in version 4.9.
当内置备份被触发时,你可以将额外的变量传递给 borg create。
示例:
BORG_EXTRA_ARGS = ["--exclude", "vcs/"]
CACHE_DIR¶
Added in version 4.16.
Weblate 存放缓存文件的目录。默认为 DATA_DIR 中的 cache 子目录。
将此更改为本地或临时文件系统,如果 DATA_DIR 位于网络文件系统上。
Weblate stores generated helper files here and executes some of them, so
CACHE_DIR has to be writable and mounted on a filesystem that allows
execution. Avoid using noexec mount options for this directory.
Docker 容器为这个使用了一个单独的卷,请参阅 Docker 容器卷。
后面的子目录通常存在:
sshGenerated helper files used for VCS access.
fonts管理字型 的 font-config 缓存。
avatar缓存的用户头像,见 头像。
static静态 Django 文件的默认位置,由
STATIC_ROOT指定。见 为静态文件提供服务。tesseract屏幕截图和可视化上下文 的 OCR 训练数据。
CSP_SCRIPT_SRC, CSP_IMG_SRC, CSP_CONNECT_SRC, CSP_STYLE_SRC, CSP_FONT_SRC, CSP_FORM_SRC¶
为 Weblate 定制 Content-Security-Policy 标头。根据允许集成的第三方服务(Matomo、Google Analytics、Sentry……)来自动生成标头。
这些都是空列表的默认值。
示例:
# Enable Cloudflare Javascript optimizations
CSP_SCRIPT_SRC = ["ajax.cloudflare.com"]
CHECK_LIST¶
翻译时执行的质量检查列表。
备注
提供一个实现了检查接口的 Python 类的完全合规路径。
调整检查列表,来包括与你相关的那些检查。
所有内建的 质量检查 默认都打开,可以从那里更改设置。它们在 配置的示例 中被默认注释掉,从而使用默认值。然后每个新的 Weblate 版本执行新的检查。
可以关闭所有检查:
CHECK_LIST = ()
可以只打开一部分检查:
CHECK_LIST = (
"weblate.checks.chars.BeginNewlineCheck",
"weblate.checks.chars.EndNewlineCheck",
"weblate.checks.chars.MaxLengthCheck",
)
备注
更改这些设置只影响新更改的翻译,现存的检查仍然存储在数据库中。为了将更改同样应用到存储的翻译中,运行 updatechecks。
COMMIT_PENDING_HOURS¶
通过后台任务方式提交待处理更改之间的小时数。
COMPONENT_ZIP_UPLOAD_MAX_SIZE¶
Added in version 5.17.1.
配置上传部件 ZIP 文件的最大大小,单位为字节。默认 50 MB。
在 Docker 中,用 WEBLATE_COMPONENT_ZIP_UPLOAD_MAX_SIZE 环境变量配置这个。
参见
CONTACT_FORM¶
Added in version 4.6.
配置来自联系表单的电子邮件的发送方式。选择与您的电子邮件服务器配置相匹配的配置。
"reply-to"The sender is used as Reply-To, this is the default behaviour.
"from"The sender is used as From. Your mail server needs to allow sending such e-mails.
"disabled"彻底停用联系表单。
Added in version 5.15.
DATA_DIR¶
Weblate 存储所有数据的文件夹。它包含指向版本控制系统仓库、全文索引和外部工具的各种配置文件。
后面的子目录通常存在:
homeHome 目录用于调用脚本。
sshSSH 密钥和配置。
mediaDjango 媒体文件的默认位置,由
MEDIA_ROOT指定。包含已上传的截屏,见 屏幕截图和可视化上下文。vcs翻译的版本控制仓库。
backups每日备份数据,详情请查阅 下载的数据用于备份。
字体:用户上传的字体,参见 管理字型。
cache各种缓存。可使用
CACHE_DIR置于别处。Docker 容器为这个使用了一个单独的卷,请参阅 Docker 容器卷。
备注
这个目录必须由 Weblate 写入。将它作为 WSGI 运行意味着 www-data 用户应该对它具有写入权限。
实现这个的最简单方式是使用户作为目录的所有者:
sudo chown www-data:www-data -R $DATA_DIR
默认为 /home/weblate/data,但预计将进行配置。
DATABASE_BACKUP¶
数据库备份应该存储为纯文本,压缩还是跳过。授权值为:
"plain""compressed""none"
DEFAULT_ACCESS_CONTROL¶
新项目的默认访问控制设置:
0公开的
1受保护的
100私有的
200自定义
如果手动管理 ACL 则使用 自定义,这意味着不依赖于 Weblate 内部管理。
DEFAULT_AUTO_WATCH¶
Added in version 4.5.
配置是否应该为新用户打开 自动关注作出贡献的项目。默认为 True 。
参见
DEFAULT_RESTRICTED_COMPONENT¶
Added in version 4.1.
部件限制的默认值。
DEFAULT_ADD_MESSAGE, DEFAULT_ADDON_MESSAGE, DEFAULT_COMMIT_MESSAGE, DEFAULT_DELETE_MESSAGE, DEFAULT_MERGE_MESSAGE¶
不同操作的默认提交说明,请查阅 部件配置 了解详情。
DEFAULT_ADDONS¶
安装在每个创建的部件中的默认附加组件。
备注
此设置只影响新创建的部件。
示例:
DEFAULT_ADDONS = {
# Add-on with no parameters
"weblate.flags.target_edit": {},
# Add-on with parameters
"weblate.autotranslate.autotranslate": {
"mode": "suggest",
"filter_type": "todo",
"auto_source": "mt",
"component": "",
"engines": ["weblate-translation-memory"],
"threshold": "80",
},
}
DEFAULT_COMMITER_EMAIL¶
提交者电子邮箱地址默认为 noreply@weblate.org。
DEFAULT_COMMITER_NAME¶
提交者姓名默认为 Weblate。
DEFAULT_LANGUAGE¶
Added in version 4.3.2.
任何新部件的 源语言。
默认为 en。匹配的语言对象需要存在于数据库中。
DEFAULT_MERGE_STYLE¶
任何新部件的 合并方式。
rebase - default
merge
DEFAULT_TRANSLATION_REVIEW¶
Added in version 5.16.
配置 启用审核 的默认值,默认关闭。
DEFAULT_SOURCE_REVIEW¶
Added in version 5.16.
配置 启用原文审核 的默认值,默认关闭。
DEFAULT_AUTOCLEAN_TM¶
Added in version 5.13.
配置 自动清理翻译记忆库 的默认值。
DEFAULT_TRANSLATION_PROPAGATION¶
翻译传播的默认设置,默认为 True。
DEFAULT_PULL_MESSAGE¶
配置拉取请求的默认标题和说明。
ENABLE_AVATARS¶
是否为用户开启基于 Gravatar 的头像。默认开启。
头像取出并缓存在从服务器中,降低了泄漏个人信息的风险,加速了用户体验。
ENABLE_HOOKS¶
是否打开匿名远程钩子。
参见
ENABLE_HTTPS¶
在 5.7 版本发生变更: 对于 WebAuthn 支持,Weblate 现在要求 https。
将链接作为 HTTPS 还是 HTTP 发送给 Weblate。这个设置影响发送电子邮件,并产生绝对 URL。
在默认配置中,这还用于与 HTTPS 相关的几个 Django 设置 — 启用安全 Cookie、切换 HSTS 或允许重定向到 HTTPS URL。
在一些情况下 HTTPS 重定向会有问题,您可以在使用反向代理进行 SSL 终端连接的情况下碰到无限重定向的问题,使用反向代理进行 SSL 终端连接不能将协议标头正确地传递给 Django。请调整自己的反向代理配置以传递 X-Forwarded-Proto 或 Forwarded 标头,或者配置 SECURE_PROXY_SSL_HEADER,让 Django 正确地检测 SSL 状态。
如果它被停用,Weblate 启动会失败,显示错误 otp_webauthn.E031 。要不显示这个错误,你可以将它添加到 SILENCED_SYSTEM_CHECKS,但即使这么做,WebAuthn 也不会适用于没有 HTTPS 的站点。
ENABLE_SHARING¶
打开/关闭 社区 菜单,使用户能够将翻译过程分享到社交网络上。
参见
EXTRA_HTML_HEAD¶
Added in version 4.15.
将附加标记插入 HTML 标头。可用于验证站点所有权,示例:
EXTRA_HTML_HEAD = '<link href="https://fosstodon.org/@weblate" rel="me">'
警告
未对字符串进行清洁操作,它按原样插入到 HTML 标头中。
GET_HELP_URL¶
Added in version 4.5.2.
可以找到你的 Weblate 实例支持的 URL。
GITEA_CREDENTIALS¶
Added in version 4.12.
Gitea 服务器凭据列表。
GITEA_CREDENTIALS = {
"try.gitea.io": {
"username": "weblate",
"token": "your-api-token",
},
}
配置目录由为每个 API 主机定义的凭据所组成。几乎所有版本控制集成的布局都是一样的,描述见 配置版本控制凭据。
GITLAB_CREDENTIALS¶
Added in version 4.3.
用于 GitLab 服务器的证明列表。
GITLAB_CREDENTIALS = {
"gitlab.com": {
"username": "weblate",
"token": "your-api-token",
},
}
备注
要能使用该 API,个人访问令牌需要 api 范围。
配置目录由为每个 API 主机定义的凭据所组成。几乎所有版本控制集成的布局都是一样的,描述见 配置版本控制凭据。
GITHUB_CREDENTIALS¶
Added in version 4.3.
用于 GitHub 服务器的证明列表。
GITHUB_CREDENTIALS = {
"api.github.com": {
"username": "weblate",
"token": "your-api-token",
},
}
备注
同时使用精细个人访问令牌和经典个人访问令牌是能做到的。精细令牌被限制在单个组织,因此如果你要 Weblate 去 fork 一个组织之外的仓库(通常到用户命名空间),它不会工作。
要克隆、推送并创建拉取请求,需要对 Contents 和 Pull requests 的读取和写入权限。
Administration 对 fork 仓库来说可能也是必需的,如果你打算使用 fork,而原始仓库并不公开。
提示
Use api.github.com as an API host for https://github.com/.
配置目录由为每个 API 主机定义的凭据所组成。几乎所有版本控制集成的布局都是一样的,描述见 配置版本控制凭据。
BITBUCKETSERVER_CREDENTIALS¶
Added in version 4.16.
Bitbucket 数据中心凭据列表。
BITBUCKETSERVER_CREDENTIALS = {
"git.self-hosted.com": {
"username": "weblate",
"token": "http-access-token",
},
}
配置目录由为每个 API 主机定义的凭据所组成。几乎所有版本控制集成的布局都是一样的,描述见 配置版本控制凭据。
BITBUCKETCLOUD_CREDENTIALS¶
Added in version 5.8.
Bitbucket Cloud 服务器凭据列表。
BITBUCKETCLOUD_CREDENTIALS = {
"bitbucket.org": {
"username": "your-email",
"workspace": "your-workspace-slug",
"token": "your-api-token",
},
}
配置目录由为每个 API 主机定义的凭据所组成。API 主机可能和你在网页浏览器中所用的不同,比如 GitHub API 访问地址为 api.github.com.
下列配置对每个主机可用:
usernameAPI 用户。
workspace用户工作区标识符。
token有 pullrequest:write 权限的 API 令牌。
此处未说明的其他设置可以在 配置版本控制凭据 中找到。
AZURE_DEVOPS_CREDENTIALS¶
Added in version 5.2.
Azure DevOps 服务器凭据列表。
AZURE_DEVOPS_CREDENTIALS = {
"dev.azure.com": {
"username": "project-name",
"token": "your-api-token",
"organization": "organization-name",
},
}
配置目录由为每个 API 主机定义的凭据所组成。API 主机可能和你在网页浏览器中所用的不同,比如 GitHub API 访问地址为 api.github.com.
下列配置对每个主机可用:
usernameAzure DevOps 项目名。注意不是仓库名。
organization项目组织名。
workItemIds贵组织工作项 ID 的可选列表。提供之后,新的拉取请求会附上这些 ID。
tokenAPI 用户的 API 令牌,必填。
此处未说明的其他设置可以在 配置版本控制凭据 中找到。
GOOGLE_ANALYTICS_ID¶
Google Analytics ID,打开使用 Google Universal Analytics 对 Weblate 的监控。
备注
Google Analytics 4 集成当前对 Weblate 不可用,请见 https://github.com/WeblateOrg/weblate/issues/14015。
HIDE_REPO_CREDENTIALS¶
隐藏仓库凭据避免出现在 web 界面中。在仓库 URL 带有用户名和密码的情况下,Weblate 会在相关信息显示给用户时将其隐藏起来。
例如,它将显示 https://git.example.com/repo.git 不会显示 https://user:password@git.example.com/repo.git。它也尝试以相似的方式清除版本控制系统错误信息。
备注
默认开启。
VERSION_DISPLAY¶
Added in version 5.17.
控制 Weblate 暴露自身版本的显著程度。
支持的值为:
show在页脚等共享用户界面中显示版本并在
GET /api/metrics/中暴露它。soft在显眼的共享用户界面中隐藏版本,但在 关于 页面和
GET /api/metrics/中让版本可发现。hide在共享的用户界面和
GET /api/metrics/中隐藏版本。这还会使匿名文档链接指向最新文档而不是匹配已安装 Weblate 版本的文档。
隐藏版本是某些企业推荐的安全实践,但不能防止攻击者通过试探行为来推测版本。
备注
默认值是 显示 。
HIDE_VERSION¶
Added in version 4.3.1.
自 5.17 版本弃用.
VERSION_DISPLAY 的兼容性别称。将这个设为 True 以获取和 VERSION_DISPLAY = "hide" 相同的行为。
IP_BEHIND_REVERSE_PROXY¶
指示 Weblate 是否在反向代理之后运行。
如果设置为 True,Weblate 会从 IP_PROXY_HEADER 定义的标头中获取 IP 地址。
警告
确保真正使用反向代理,并且设置了这个标头,否则用户将能够假冒 IP 地址。
备注
默认这不是打开的。
IP_PROXY_HEADER¶
指示当 IP_BEHIND_REVERSE_PROXY 打开时,Weblate应该从那个标头得到 IP 地址。
默认为 HTTP_X_FORWARDED_FOR。
IP_PROXY_OFFSET¶
在 5.0.1 版本发生变更: 默认值从 1 改成了 -1。
指示 IP_PROXY_HEADER 的哪部分用作客户端 IP 地址。
取决于你的设置,这个标头会包括几个 IP 地址,(例如 X-Forwarded-For: client-ip, proxy-a, proxy-b),并且可以配置标头的哪个地址在这里用作客户端 IP 地址。
警告
设置这个会影响你安装的安全性,应该只配置它来使用信任的代理来确定 IP 地址。请查阅 <https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Reference/Headers/X-Forwarded-For#安全和隐私考虑> 了解更多信息。
默认为 -1。
LEGAL_TOS_DATE¶
Added in version 4.15.
备注
你需要安装 法律组件 才能让其生效。
服务条款文件的最后更新日期。每当日期更改时,用户都需要同意更新的服务条款。
from datetime import date
LEGAL_TOS_DATE = date(2022, 2, 2)
LEGAL_URL¶
你的 Weblate 实例显示其法律文件的 URL。
提示
在将你的法律文件保存在 Weblate 之外,而将其嵌入 Weblate 的情况下有用。细节请查看 法律组件。
示例:
LEGAL_URL = "https://weblate.org/terms/"
参见
LICENSE_EXTRA¶
包括在许可选择中的其他许可。
备注
Each license definition should be a tuple of its short name, a long name, a URL and a boolean, indicating whether it is a libre license.
例如:
LICENSE_EXTRA = [
(
"AGPL-3.0",
"GNU Affero General Public License v3.0",
"https://www.gnu.org/licenses/agpl-3.0-standalone.html",
True,
),
]
LICENSE_FILTER¶
在 4.3 版本发生变更: 现在将此设置为空值可禁用许可证警报。
筛选要显示的许可证列表。将此设置为空可禁用许可证警报。
备注
这个过滤器使用简短的许可证名称。
例如:
LICENSE_FILTER = {"AGPL-3.0", "GPL-3.0-or-later"}
以下为禁用许可证警报的方法:
LICENSE_FILTER = set()
参见
LICENSE_REQUIRED¶
定义了是否需要 部件配置 中的许可属性。
备注
默认这是关闭的。
LIMIT_TRANSLATION_LENGTH_BY_SOURCE_LENGTH¶
是否应限制给定翻译的长度。限制为源字符串的长度 × 10 个字符。
提示
将其设置为 False 即可允许更长的翻译(最多 10,000 个字符),而不管源字符串的长度。
备注
默认为 True。
LOCALIZE_CDN_URL 和 LOCALIZE_CDN_PATH¶
These settings configure the CDN add-ons, including
JavaScript 本地化 CDN and Translation files CDN.
LOCALIZE_CDN_URL defines root URL where the localization CDN is
available and LOCALIZE_CDN_PATH defines path where Weblate should
store generated files which will be served at the LOCALIZE_CDN_URL.
The files are served by your web server or CDN, not by Weblate; see
语言本地化内容分发网络 for secure serving guidance.
提示
在 Hosted Weblate 中,这使用 https://weblate-cdn.com/。
MATOMO_SITE_ID¶
你想用来跟踪 Weblate 的 Matomo(以前的 Piwik)网站的 ID。
备注
这个集成不支持 Matomo Tag Manager。
参见
MATOMO_URL¶
你想用于跟踪 Weblate 使用情况的 Matomo(以前的 Piwik)安装的完整 URL(包括结尾的斜杠)。请查阅 <https://matomo.org/> 了解详情。
提示
这个集成不支持 Matomo Tag Manager。
例如:
MATOMO_SITE_ID = 1
MATOMO_URL = "https://example.matomo.cloud/"
NEARBY_MESSAGES¶
完整编辑器中在两个方向上显示的附近字符串数量。
这只是默认值,用户可以在 用户个人资料 中调整这个。
DEFAULT_PAGE_LIMIT¶
Added in version 4.7.
分页激活时显示的默认元素数量。
PAGURE_CREDENTIALS¶
Added in version 4.3.2.
Pagure 服务器凭据列表。
PAGURE_CREDENTIALS = {
"pagure.io": {
"username": "weblate",
"token": "your-api-token",
},
}
配置目录由为每个 API 主机定义的凭据所组成。几乎所有版本控制集成的布局都是一样的,描述见 配置版本控制凭据。
PASSWORD_MINIMAL_STRENGTH¶
Added in version 5.10.2.
最小的密码得分由 zxcvbn 密码长度预测器进行评估。
默认为 0,表示停用强度检查。
PASSWORD_RESET_URL¶
Added in version 5.17.
当身份认证由 LDAP、SAML 或 OAuth 等外部身份提供方处理时的密码重置 URL。
设置后,登录页上的 忘记密码了吗? 链接到此 URL 而不是 Weblate 内置的密码重置页面。
PRIVACY_URL¶
Added in version 4.8.1.
你的 Weblate 实例显示隐私政策的 URL。
提示
在将你的法律文件保存在 Weblate 之外,而将其嵌入 Weblate 的情况下有用。细节请查看 法律组件。
示例:
PRIVACY_URL = "https://weblate.org/terms/"
参见
PRIVATE_COMMIT_EMAIL_OPT_IN¶
Added in version 4.15.
配置私密提交邮箱是手动启用还是默认启用(默认情况下为手动启用)。
提示
此设置仅适用于未明确选择提交邮箱的用户。
PRIVATE_COMMIT_EMAIL_TEMPLATE¶
Added in version 4.15.
为用户生成私密提交邮箱的模板。默认为 "{username}@users.noreply.{site_domain}" 。
它可以包含 {user_id}, {username}, {site_title}, 和 {site_domain}.
留空禁用该功能。
备注
除非通过 PRIVATE_COMMIT_EMAIL_OPT_IN 配置,否则使用不同的提交邮箱对用户而言默认处于手动启用状态。用户可以在 个人资料 中配置提交邮箱。
PRIVATE_COMMIT_NAME_OPT_IN¶
Added in version 5.16.
配置私密提交名称是手动启用还是默认启用(默认情况下为手动启用)。
提示
此设置仅适用于未明确选择提交名称的用户。
PRIVATE_COMMIT_NAME_TEMPLATE¶
Added in version 5.16.
为用户生成私密提交名称的模板。默认为 "{site_title} user {user_id}".
它可以包含 {user_id}, {username}, {site_title}, 和 {site_domain}.
留空禁用该功能。
备注
除非通过 PRIVATE_COMMIT_NAME_OPT_IN 配置,否则使用不同的提交名称对用户处于手动启用状态。用户可以在 个人资料 中配置提交名称。
PROJECT_BACKUP_KEEP_COUNT¶
Added in version 4.14.
定义每个项目在服务器上保留多少备份,默认值为 3。
参见
PROJECT_BACKUP_KEEP_DAYS¶
Added in version 4.14.
定义项目备份将在服务器上保留多长时间,默认值为 30 天。
参见
PROJECT_BACKUP_UPLOAD_MAX_SIZE¶
Added in version 5.17.1.
Configures the maximum size, in bytes, for uploaded project backup ZIP files. Defaults to 536870912 bytes (512 MiB).
In Docker, configure this using the WEBLATE_PROJECT_BACKUP_UPLOAD_MAX_SIZE
environment variable. Docker setups can also be constrained by
CLIENT_MAX_BODY_SIZE; other deployments can be constrained by their
reverse proxy request body-size limit.
参见
PROJECT_BACKUP_IMPORT_MAX_MEMBERS¶
Added in version 5.17.
定义导入项目备份时允许的 ZIP 条目的最大数量。
这是针对格式错误或刻意碎片化归档文件的一种防护措施。默认为 100000 个条目。
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_MEMBERS environment variable.
参见
PROJECT_BACKUP_IMPORT_MAX_TOTAL_UNCOMPRESSED_SIZE¶
Added in version 5.17.1.
Defines the maximum total uncompressed size, in bytes, for ZIP entries in an imported project backup. Defaults to 536870912 bytes (512 MiB).
This limits archives that are small when uploaded but expand to much more data during validation or restore.
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_TOTAL_UNCOMPRESSED_SIZE environment
variable.
参见
PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE¶
Added in version 5.17.
定义导入的项目备份中单个高度压缩的 ZIP 条目的最大未压缩大小(以字节为单位)。
此限制仅适用于那些体积足够大且压缩程度足够高、看起来可疑的条目。这里特意允许使用体积大但压缩率低的文件,并且预计会受到 HTTP 上传限制的约束。默认为 262144000 字节(250 MiB)。
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE environment
variable.
参见
PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE¶
Added in version 5.17.
定义 Weblate 在项目备份导入期间开始考虑 ZIP 压缩比的最小未压缩大小(以字节为单位)。
基于压缩比的验证会忽略较小的文件,以避免拒绝那些压缩效果良好且大小合理的文件。默认为 1048576 字节(1 MiB)。
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE environment variable.
参见
PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_RATIO¶
Added in version 5.17.
定义项目备份导入期间大型 ZIP 条目的未压缩大小和压缩大小之间允许的最大比例。
此设置与 PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_SIZE 和 PROJECT_BACKUP_IMPORT_MIN_RATIO_SIZE 配合使用来检测可疑的压缩条目,同时仍然允许大型仓库打包文件和其他低压缩率内容。默认为 250。
In Docker, configure this using the
WEBLATE_PROJECT_BACKUP_IMPORT_MAX_COMPRESSED_ENTRY_RATIO environment
variable.
参见
PROJECT_NAME_RESTRICT_RE¶
Added in version 4.15.
定义用于限制项目命名的正则表达式。任何匹配的名称都将被拒绝。
参见
PROJECT_WEB_RESTRICT_HOST¶
Added in version 4.16.2.
在项目网站中拒绝使用特定的主机。匹配任意子域名,因此包含 example.com 会同样拦截 test.example.com. 此列表只应包含小写字符串,进行匹配前,解析的域名名称会转为小写。
默认配置:
PROJECT_WEB_RESTRICT_HOST = {"localhost"}
PROJECT_WEB_RESTRICT_ALLOWLIST¶
Added in version 5.17.
定义一组验证项目网站时排除在 PROJECT_WEB_RESTRICT_HOST、PROJECT_WEB_RESTRICT_NUMERIC、PROJECT_WEB_RESTRICT_PRIVATE 和 PROJECT_WEB_RESTRICT_RE 之外的项目标识符。项目标识符匹配不区分大小写。
小心
此排除削弱对匹配项目的外联 URL 保护,包括 PROJECT_WEB_RESTRICT_PRIVATE 所强制的内网目标限制。请只把它用于受信任的由管理员管理的项目,绕过这些检查在此类项目中是有意为之的。
默认配置:
PROJECT_WEB_RESTRICT_ALLOWLIST = set()
PROJECT_WEB_RESTRICT_NUMERIC¶
Added in version 4.16.2.
拒绝在项目网站中使用数字 IP 地址。默认启用。
PROJECT_WEB_RESTRICT_PRIVATE¶
Added in version 5.17.
拒绝使用指向内部或非公开地址的项目网站和仓库浏览器 URL。默认开启。
PROJECT_WEB_RESTRICT_RE¶
Added in version 4.15.
定义正则表达式限制什么可以被输入为 项目网站。任何匹配的 URL 都将被拒绝。
WEBHOOK_PRIVATE_ALLOWLIST¶
Added in version 5.17.
定于免于对外 webhook 传送限制 WEBHOOK_RESTRICT_PRIVATE 设置的主机名或域名。条目遵守 Django 主机匹配语义,因此可以使用 hooks.internal.example 或 .internal.example 等值。
默认配置:
WEBHOOK_PRIVATE_ALLOWLIST = []
WEBHOOK_RESTRICT_PRIVATE¶
Added in version 5.17.
拒绝指向内部或非公开地址的 webhook URL,除非目标主机包含在 WEBHOOK_PRIVATE_ALLOWLIST 中。默认开启。
启用后将拒绝验证期间无法解析的主机名,除非在 WEBHOOK_PRIVATE_ALLOWLIST 中明确允许它们。
PUBLIC_ENGAGE¶
Added in version 5.16.2.
即使设置了 REQUIRE_LOGIN,仍允许公众参与页面。
参见
RATELIMIT_NOTIFICATION_LIMITS¶
Added in version 5.14.
限制向单一用户发送多少条通知。
默认设置为:
# Multi-level rate limiting for email notifications
# Each tuple contains (max_emails, time_window_seconds)
RATELIMIT_NOTIFICATION_LIMITS = [
# Prevent burst sends - 3 emails per 2 minutes
(3, 120),
# Equalize to avoid getting blocked for too long - 10 emails per hour
(10, 3600),
# Daily limit: 50 emails per day
(50, 86400),
]
RATELIMIT_ATTEMPTS¶
在应用次数限制前,身份认证尝试的最多次数。
默认为 5。
RATELIMIT_WINDOW¶
应用次数限制后,可接受多少次身份认证。
秒数默认为 300(5 分钟)。
RATELIMIT_LOCKOUT¶
在应用次数限制后,身份认证锁定多久。
秒数默认为 600(10 分钟)。
REGISTRATION_ALLOW_BACKENDS¶
Added in version 4.1.
身份认证后端的列表,允许从中注册。这只限制新的注册,用户可以使用配置的身份认证后端,来进行身份认证和添加身份认证。
限制注册后端的同时,推荐保持 REGISTRATION_OPEN 为开启状态,否则用户将能够注册,但Weblate不会在用户界面显示注册的链接。
示例:
REGISTRATION_ALLOW_BACKENDS = ["azuread-oauth2", "azuread-tenant-oauth2"]
提示
与身份认证 URL 中使用的名称匹配的后端名称。
REGISTRATION_CAPTCHA¶
新账户注册是否受 CAPTCHA 的保护。此功能默认开启。
If turned on, a CAPTCHA is added to all pages where a user enters their e-mail address:
新账户注册。
找回密码。
将电子邮箱地址添加到账户中。
供未登录用户使用的联系表单。
保护当前由下列步骤组成:
用户要解决的数学人机验证。
Proof of work challenge calculated by the browser. The difficulty can be adjusted using
ALTCHA_COST,ALTCHA_MEMORY_COST, andALTCHA_PARALLELISM.
REGISTRATION_EMAIL_MATCH¶
允许你筛选哪个电子邮箱地址可以注册。
默认为 .*,允许使用任何电子邮箱地址注册。
可以用它限制注册到单一的电子邮箱域名:
REGISTRATION_EMAIL_MATCH = r"^.*@weblate\.org$"
REGISTRATION_ALLOW_DISPOSABLE_EMAILS¶
Added in version 5.16.1.
允许使用一次性电子邮件域名进行注册。启用后,会绕过一次性域名屏蔽列表。默认为 False。
REGISTRATION_OPEN¶
当前是否允许注册新账户。默认为允许。
这个设置影响了内建的通过电子邮箱地址或通过 Python 社交认证的身份认证(可以允许某些后端使用 REGISTRATION_ALLOW_BACKENDS)。
备注
如果使用第三方身份认证方法,如 LDAP 身份认证,只是隐藏注册表单,而新用户仍然能够登录并建立账户。
REGISTRATION_REBIND¶
Added in version 4.16.
允许为现有用户重新绑定身份认证后端。在不同身份认证提供者之间迁移时请打开此选项。
备注
默认禁用,不允许添加其他身份认证后端到现有账户。使用更多第三方身份认证后端时,重新绑定可导致账户沦陷。
REPOSITORY_ALERT_THRESHOLD¶
Added in version 4.0.2.
触发仓库过期警报的阈值,或者包含了太多更改的阈值。默认为 25。
参见
REQUIRE_LOGIN¶
Added in version 4.1.
这会启用 django.contrib.auth.middleware.LoginRequiredMiddleware 并配置 REST 框架要求所有 API 端点进行身份认证。
在 5.15 版本发生变更: Weblate 现在依赖 Django 内置中间件。
备注
这实现在 配置的示例 中。对于 Docker,使用 WEBLATE_REQUIRE_LOGIN。
SENTRY_DSN¶
Sentry DSN 用于 收集错误报告并监控性能。
SENTRY_ENVIRONMENT¶
配置 Sentry 环境。默认值为 devel.
SENTRY_MONITOR_BEAT_TASKS¶
Added in version 5.13.
配置是否用 Sentry 监控 Celery Beat 任务。默认值是 True.
SENTRY_PROFILES_SAMPLE_RATE¶
配置性能监控采样率。设为 1 跟踪所有事件,0(默认值)禁用跟踪。
参见
SENTRY_SEND_PII¶
允许 Sentry 收集特定的个人可识别身份信息。此选项默认关闭。
在 5.7 版本发生变更: 默认关闭,曾经默认开启。
SENTRY_TRACES_SAMPLE_RATE¶
配置个人资料监控采样率。设为 1 跟踪所有事件,0(默认)禁用跟踪。
SIMPLIFY_LANGUAGES¶
对于默认语言/国家组合使用简单语言代码。例如,fr_FR 翻译将使用 fr 语言代码。这通常是受欢迎的特性,因为它简化了这些默认群组合列出的语言。
如果对每种不同的变化想要不同的翻译,那么请将其关闭。
SITE_DOMAIN¶
配置网站域名。这对于在很多地方获得正确的绝对链接是必要的(例如激活电子邮箱、通知或 RSS 订阅源)。
在 Weblate 运行在非标准端口时,这里同样要包括它。
示例:
# Production site with domain name
SITE_DOMAIN = "weblate.example.com"
# Local development with IP address and port
SITE_DOMAIN = "127.0.0.1:8000"
备注
这个设置应该只包含域名。对于配置协议,(开启并强制 HTTPS)使用 ENABLE_HTTPS;对于修改 URL,使用 URL_PREFIX。
提示
关于 Docker 容器,网站域名通过 WEBLATE_ALLOWED_HOSTS 来配置。
SITE_TITLE¶
用于网站和发送电子邮件的网站名称。
SPECIAL_CHARS¶
屏幕键盘中包括的另外的字符,虚拟键盘。
默认值为:
SPECIAL_CHARS = ("\t", "\n", "\u00a0", "…")
SINGLE_PROJECT¶
将用户直接重定向到项目或部件,而不是显示操作面板。可以将其设置为 True,这样它只在 Weblate 中确实只有单一的项目时生效。另外可以设置项目标识串,将无条件地重定向到这个项目。
示例:
SINGLE_PROJECT = "test"
SSH_EXTRA_ARGS¶
Added in version 4.9.
允许在 Weblate 调用SSH时添加自定义参数。这会在连接到使用传统加密或其他非标准功能的服务器时帮助巨大。
例如,当 Weblate 的 SSH 连接失败并提示 Unable to negotiate with legacyhost: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1 时,你可以用以下方式启用:
SSH_EXTRA_ARGS = "-oKexAlgorithms=+diffie-hellman-group1-sha1"
提示
该字符串由 shell 评估,因此请确保任何空格和特殊字符都用引号括起来。
参见
STATUS_URL¶
你的 Weblate 实例报告其状态的 URL。
SUPPORT_STATUS_CHECK¶
Added in version 5.5.
停用半年度支持状态检查并在登录捐赠页时重定向超级用户,假使不存在活跃的支持订阅。
提示
购买支持订阅改进你的 Weblate 体验并推进 Weblate 项目进展。
TRANSLATION_UPLOAD_MAX_SIZE¶
Added in version 5.17.1.
配置上传的翻译文件的最大大小,单位为字节。默认 50 MB。
在 Docker 中,用 WEBLATE_TRANSLATION_UPLOAD_MAX_SIZE 环境变量配置这个。
UNUSED_ALERT_DAYS¶
Added in version 4.17.
配置何时触发 该部件似乎从未使用 警报。
默认为 365 天,设置为 0 则禁用。
UPDATE_LANGUAGES¶
Added in version 4.3.2.
控制在运行数据库迁移时是否应该更新语言数据库,默认开启。这个设置对 setuplang 的调用没有影响。
警告
语言显示可能会与此不一致。Weblate 语言定义会随着时间的推移而扩展,并且它不会显示所定义语言的语言代码。
参见
URL_PREFIX¶
这个设置允许在一些路径下运行 Weblate(否则它依赖于从 web 服务器根目录运行)。
备注
为了使用这个设置,还需要配置服务器来去掉这个前缀。例如 WSGI,可以通过设置 WSGIScriptAlias 来实现。
提示
前缀应该以 / 开始。
示例:
URL_PREFIX = "/translations"
备注
这个设置在 Django 内建服务器中不起作用,必须调整 urls.py 来包含这个前缀。
VCS_ALLOW_HOSTS¶
Added in version 5.15.
配置 VCS URL 时要允许的一组主机。默认是空组,表示完全不筛选。
启用 VCS_RESTRICT_PRIVATE 时,匹配的主机同样豁免内网目标限制。
VCS_ALLOW_SCHEMES¶
Added in version 5.15.
配置 VCS URL 时要允许的一组 URL 方案。默认只允许 https and ssh.
VCS_RESTRICT_PRIVATE¶
Added in version 5.17.
拒绝指向内部或非公开地址的 VCS 仓库 URL,除非目标主机包含在 VCS_ALLOW_HOSTS 中。默认开启。
启用后,将拒绝无法在验证期间解析的主机名,除非在 VCS_ALLOW_HOSTS 中明确包含它们。
VCS_API_DELAY¶
Added in version 4.15.1.
Configures minimal delay in seconds between third-party API calls in GitHub 拉取请求, GitLab 合并请求, Gitea 拉取请求, Pagure 合并请求, and Azure DevOps 拉取请求.
这个速率限制 Weblate 对这些服务的调用,避免服务过载。
如果你正受限于 GitHub 的二级限速器,提升这个值可能会有帮助。
默认值为 10。
VCS_API_TIMEOUT¶
Added in version 5.15.
Configures timeout in seconds for third-party API calls such as forking or creating merge requests in GitHub 拉取请求, GitLab 合并请求, Gitea 拉取请求, Pagure 合并请求, and Azure DevOps 拉取请求.
默认值为 10。
VCS_BACKENDS¶
可用的版本控制系统后端的配置。
备注
Weblate 尝试使用你所有工具支持的后端。
提示
可以使用这个来限制选择或添加定制版本控制系统后端。
VCS_BACKENDS = ("weblate.vcs.git.GitRepository",)
参见
VCS_CLONE_DEPTH¶
配置 Weblate应该对仓库进行深度为多少的克隆。
备注
当前这只在 Git 中支持。默认 Weblate 进行仓库的浅克隆,使克隆更快并节省磁盘空间。根据应用(例如当使用定制的 附加组件 时),你可能想要增加深度,或通过设置为 0 来完全关闭浅克隆。
提示
假如从 Weblate 推送得到 fatal: protocol error: expected old/new/ref, got 'shallow <commit hash>' 错误,通过设置来完全关闭浅克隆:
VCS_CLONE_DEPTH = 0
WEBLATE_ADDONS¶
可供使用的附加组件列表。为了使用,必须为给定的翻译部件启用它们。默认包括了所有内建附加组件,当扩展列表时您可能希望保持现有的附加组件处于启用状态,例如:
WEBLATE_ADDONS = (
# Built-in add-ons
"weblate.addons.gettext.GenerateMoAddon",
"weblate.addons.gettext.UpdateLinguasAddon",
"weblate.addons.gettext.UpdateConfigureAddon",
"weblate.addons.gettext.MsgmergeAddon",
"weblate.addons.gettext.GettextAuthorComments",
"weblate.addons.cleanup.CleanupAddon",
"weblate.addons.consistency.LanguageConsistencyAddon",
"weblate.addons.discovery.DiscoveryAddon",
"weblate.addons.flags.SourceEditAddon",
"weblate.addons.flags.TargetEditAddon",
"weblate.addons.flags.SameEditAddon",
"weblate.addons.flags.BulkEditAddon",
"weblate.addons.generate.GenerateFileAddon",
"weblate.addons.properties.PropertiesSortAddon",
"weblate.addons.git.GitSquashAddon",
"weblate.addons.removal.RemoveComments",
"weblate.addons.removal.RemoveSuggestions",
"weblate.addons.resx.ResxUpdateAddon",
"weblate.addons.autotranslate.AutoTranslateAddon",
"weblate.addons.cdn.CDNJSAddon",
# Add-on you want to include
"weblate.addons.example.ExampleAddon",
)
备注
从列表中删除附加组件并不能将其从部件中卸载。Weblate 在这种情况下会崩溃。请先从所有部件中卸载附加组件,然后再将其从此列表中删除。
ADDON_ACTIVITY_LOG_EXPIRY¶
Added in version 5.6.
配置要保留附加组件活动记录多长时间。默认为 180 天。
WEBLATE_EXPORTERS¶
Added in version 4.2.
可用的导出程序列表,提供下载各种文件格式的翻译或术语表。
参见
WEBLATE_FORMATS¶
可供使用的文件格式列表。
备注
默认列表已经具有了常见格式。
参见
WEBLATE_MACHINERY¶
Added in version 4.13.
可供使用的机器翻译服务列表。
WEBLATE_GPG_IDENTITY¶
Weblate 对 Git 提交进行签名的身份,例如:
WEBLATE_GPG_IDENTITY = "Weblate <weblate@example.com>"
在 Weblate GPG 密钥环中搜索匹配的密钥(DATA_DIR 下的 home/.gnupg)。如果找不到,则会生成一个密钥,请查阅 使用 GnuPG 为 Git 提交签名 了解详情。
WEBSITE_REQUIRED¶
定义了在创建项目时是否需要指定 项目网站。默认打开,因为这适合公共服务器的设置。
WEBSITE_ALERTS_ENABLED¶
Added in version 5.17.
默认: True
定义 Weblate 是否应检查项目网站可用性并对无法访问的项目网站显示警报。
当设置为 False 时,Weblate 将跳过网站可用性检查,并且不会生成项目网站警报。这在以下情况下非常有用:
您的网站位于防火墙后面,会阻止 Weblate 的请求
您希望避免因机器人防护而导致的 403/503 类型的错误
项目网站的可用性并非您安装所关注的问题
配置版本控制凭据¶
提示
此部分将 VCS 凭据描述为 GITHUB_CREDENTIALS、GITLAB_CREDENTIALS、GITEA_CREDENTIALS、PAGURE_CREDENTIALS、BITBUCKETSERVER_CREDENTIALS。
配置目录由为每个 API 主机定义的凭据所组成。API 主机可能和你在网页浏览器中所用的不同,比如 GitHub API 访问地址为 api.github.com.
凭据也可以在 仓库推送 URL 或 源代码仓库 中被覆盖(如果没有配置 URL),这些凭据的优先级高于配置文件中所指定的凭据。
下列配置对每个主机可用:
usernameAPI 用户,必填。
tokenAPI 用户的 API 令牌,必填。
schemeAdded in version 4.18.
方案覆盖。Weblate 尝试从仓库 URL 解析方案并退回到
https。如果你正在内部运行 API 服务器,你也许想转而使用http,但考虑安全性。
提示
在 Docker 容器中,可使用环境变量配置凭据,见 代码托管站点凭据。