这是我的规则
resource "cloudflare_page_rule" "https-only" {
zone = "${var.domain}"
target = "http://*${var.domain}/*"
priority = 1
actions = {
always_use_https = true,
}
}
文档说明always_use_https
的默认值为 false 。我想为该区域的所有http流量启用此规则。
当我应用规则时,我收到此错误:
* cloudflare_page_rule.https-only: Failed to create page rule: error
from makeRequest: HTTP status 400: content "
{\"success\":false,\"errors\":[{\"code\":1004,\"message\":\"Page Rule
validation failed: See messages for details.\"}],\"messages\":
[{\"code\":1,\"message\":\".settings[0]: Invalid setting
always_use_https\",\"type\":null}],\"result\":null}"
我尝试了其他值,例如' on'但它被拒绝,因为terraform表示设置只接受布尔值。
如何使用terraform设置此规则?
答案 0 :(得分:1)
a在其他一些区域覆盖设置中也存在相同的问题。对我有用的是完成一个完整的Terraform销毁,升级到cf 2.2.0提供程序并进行申请。看起来提供商的旧版本可能与api不同步,无法执行某些区域覆盖功能。
答案 1 :(得分:0)
确保您将域设置为使用Cloudflare的名称服务器。