|
|
|
|
|
|
功能说明:此功能为试验性质,目前仅能防御简单的DDoS攻击,试验期间建议仅在被攻击时启用,仅支持已安装
| 启用DDoS防护 |
|
| 单节点TCP最大连接数 |
单个节点可以接受的TCP最大连接数。如果为0,则默认为{{defaultConfigs.tcpMaxConnections}}。 |
| 单IP TCP最大连接数 |
单个IP可以连接到节点的TCP最大连接数。如果为0,则默认为{{defaultConfigs.tcpMaxConnectionsPerIP}};最小值为{{defaultConfigs.tcpMinConnectionsPerIP}}。 |
| 单IP TCP新连接速率(分钟) |
屏蔽
单个IP每分钟可以创建TCP新连接的数量。如果为0,则默认为{{defaultConfigs.tcpNewConnectionsMinutelyRate}};最小值为{{defaultConfigs.tcpNewConnectionsMinMinutelyRate}}。如果没有填写屏蔽时间,则只丢弃数据包。 |
| 单IP TCP新连接速率(秒钟) |
屏蔽
单个IP每秒钟可以创建TCP新连接的数量。如果为0,则默认为{{defaultConfigs.tcpNewConnectionsSecondlyRate}};最小值为{{defaultConfigs.tcpNewConnectionsMinSecondlyRate}}。如果没有填写屏蔽时间,则只丢弃数据包。 |
| TCP端口列表 |
在这些端口上使用当前配置。默认为80和443两个端口。 |
| IP白名单 |
在白名单中的IP不受当前设置的限制。 |
| {{message.datetime}} | 集群:{{message.cluster.name}} DNS集群:{{message.cluster.name}} | 节点:{{message.node.name}} DNS节点:{{message.node.name}} |
| {{message.body}} |
| 启用 |
启用后,如果找不到某个域名的解析记录,则向上一级DNS查找。 |
| 从节点本机读取 上级DNS主机 |
选中后,节点会试图从 |
| 上级DNS主机地址 * |
|
| 允许的域名 | 支持星号通配符,比如 |
| 不允许的域名 |
支持星号通配符,比如 |
| 启用 |
|
| 只记录失败查询 |
选中后,表示只记录查询失败的日志。 |
| 包含未添加的域名 |
选中后,表示日志中包含对没有在系统里创建的域名访问。 |
| 启用健康检查 |
选中后,表示启用当前域名下A/AAAA记录的健康检查;启用此设置后,你仍需设置单个A/AAAA记录的健康检查。 |
| 默认检测端口 |
通过尝试连接A/AAAA记录中的IP加此端口来确定当前记录是否健康。 |
| 默认超时时间 |
秒
|
| 默认连续上线次数 |
次
连续检测{{config.countUp}}N次成功后,认为当前记录是在线的。 |
| 默认连续下线次数 |
次
连续检测{{config.countDown}}N次失败后,认为当前记录是离线的。 |
功能说明:此功能为试验性质,目前仅能防御简单的DDoS攻击,试验期间建议仅在被攻击时启用,仅支持已安装
| 启用 |
|
| 单节点TCP最大连接数 |
单个节点可以接受的TCP最大连接数。如果为0,则默认为{{defaultConfigs.tcpMaxConnections}}。 |
| 单IP TCP最大连接数 |
单个IP可以连接到节点的TCP最大连接数。如果为0,则默认为{{defaultConfigs.tcpMaxConnectionsPerIP}};最小值为{{defaultConfigs.tcpMinConnectionsPerIP}}。 |
| 单IP TCP新连接速率(分钟) |
屏蔽
单个IP每分钟可以创建TCP新连接的数量。如果为0,则默认为{{defaultConfigs.tcpNewConnectionsMinutelyRate}};最小值为{{defaultConfigs.tcpNewConnectionsMinMinutelyRate}}。如果没有填写屏蔽时间,则只丢弃数据包。 |
| 单IP TCP新连接速率(秒钟) |
屏蔽
单个IP每秒钟可以创建TCP新连接的数量。如果为0,则默认为{{defaultConfigs.tcpNewConnectionsSecondlyRate}};最小值为{{defaultConfigs.tcpNewConnectionsMinSecondlyRate}}。如果没有填写屏蔽时间,则只丢弃数据包。 |
| TCP端口列表 |
在这些端口上使用当前配置。默认为53端口。 |
| IP白名单 |
在白名单中的IP不受当前设置的限制。 |
| 已添加 | 国家/地区 省份 城市 ISP :{{region.name}} 或 且 |
| 添加新国家/地区省份城市ISP * |
|
| 区域之间关系 |
匹配所选任一区域即认为匹配成功。 匹配所有所选区域才认为匹配成功。 |
| 排除 |
选中后表示线路中排除当前条件。 |
| 启用当前记录健康检查 |
|
| 检测端口 |
默认{{parentConfig.port}}
[修改]
通过尝试连接A/AAAA记录中的IP加此端口来确定当前记录是否健康。 |
| 超时时间 |
默认{{parentConfig.timeoutSeconds}}秒
[修改]
秒
|
| 默认连续上线次数 | 默认{{parentConfig.countUp}}次 [修改] |
| 默认连续下线次数 | 默认{{parentConfig.countDown}}次 [修改] |
| 月度价格 |
元
|
| 季度价格 |
元
|
| 年度价格 |
元
|
| 基础流量费用 * |
元/GB
|
| 带宽百分位 * |
th
|
| 带宽价格 |
|
| 基础流量费用 |
元/GB
没有定义流量阶梯价格时,使用此价格。 |
| 流量阶梯价格 |
|
| 支持按区域流量计费 |
选中后,表示可以根据节点所在区域设置不同的流量价格;并且开启此项后才可以使用流量包。 |
| 带宽下限 * |
|
| 带宽上限 * |
如果填0,表示上不封顶。 |
| 单位价格 |
元/Mbps
和总价格二选一。如果设置了单位价格,那么"总价格 = 单位价格 x 带宽/Mbps"。 |
| 总价格 |
元
固定的总价格,和单位价格二选一。 |
| 带宽百分位 * |
th
带宽计费位置,在1-100之间。 |
| 基础带宽费用 |
元/Mbps
没有定义带宽阶梯价格时,使用此价格。 |
| 带宽阶梯价格 |
|
| 支持按区域带宽计费 |
选中后,表示可以根据节点所在区域设置不同的带宽价格。 |
| 带宽算法 |
按在计时时间段内(5分钟)最高带宽峰值计算,比如5分钟内最高的某个时间点带宽为100Mbps,那么就认为此时间段内的峰值带宽为100Mbps。修改此选项会同时影响到用量统计图表。 按在计时时间段内(5分钟)平均带宽计算,即此时间段内的总流量除以时间段的秒数,比如5分钟(300秒)内总流量600MB,那么带宽即为 |
| 流量下限 * |
|
| 流量上限 * |
如果填0,表示上不封顶。 |
| 单位价格 |
元/GB
和总价格二选一。如果设置了单位价格,那么"总价格 = 单位价格 x 流量/GB"。 |
| 总价格 |
元
固定的总价格,和单位价格二选一。 |
| 启用统计 |
|
| 分组{{groupIndex+1}} | {{cond.param}} {{cond.operator}} {{typeName(cond)}}: {{cond.value}} {{group.connector}} |
| 分组之间关系 |
只要满足其中一个条件分组即可。 需要满足所有条件分组。 |
| 启用HTTP/2 |
|
|
| 启用HTTP/3 |
|
|
| 选择证书 |
选择或上传证书后HTTPSTLS服务才能生效。
|
|
|
|
| TLS最低版本 | ||
| 加密算法套件(CipherSuites) |
点击可选套件添加。 |
|
| 开启HSTS |
开启后,会自动在响应Header中加入 Strict-Transport-Security: ... max-age={{hsts.maxAge}} ; includeSubDomains ; preload 修改 |
|
| HSTS有效时间(max-age) |
秒
{{hsts.days}}天
|
|
| HSTS包含子域名(includeSubDomains) |
|
|
| HSTS预加载(preload) |
|
|
| HSTS生效的域名 |
如果没有设置域名的话,则默认支持所有的域名。 |
|
| OCSP Stapling | 选中表示启用OCSP Stapling。 |
|
| 客户端认证方式 | ||
| 客户端认证CA证书 |
用来校验客户端证书以增强安全性,通常不需要设置。 |
|
在请求刚初始化时调用,此时自定义Header等尚未生效。
在准备执行请求或者转发请求之前调用,此时自定义Header、源站等已准备好。
暂时还没有缓存条件。
| 缓存条件 | 分组关系 | 缓存时间 |
|---|---|---|
|
|
和 或 或 | {{cacheRef.life.count}} {{timeUnitName(cacheRef.life.unit)}} 不缓存 |
暂时还没有URL跳转规则。
| 跳转前 | 跳转后 | HTTP状态码 | 状态 | 操作 | ||
|---|---|---|---|---|---|---|
|
{{redirect.beforeURL}}
所有域名
{{redirect.domainsBefore[0]}}
{{redirect.domainsBefore[0]}}等{{redirect.domainsBefore.length}}个域名
所有端口
{{redirect.portsBefore.join(", ")}}
{{redirect.portsBefore.slice(0, 5).join(", ")}}等{{redirect.portsBefore.length}}个端口
|
-> | {{redirect.afterURL}} {{redirect.domainAfter}} {{redirect.portAfter}} | {{redirect.status}} 默认 | 修改 删除 |
所有规则匹配顺序为从上到下,可以拖动左侧的排序。
选中后表示对比时忽略参数值的大小写。
选中后,表示缓存Key中不包含URI参数(即问号(?))后面的内容。
用来区分不同缓存内容的唯一Key。
允许请求的缓存方法,默认支持所有的请求方法。
内容尺寸如果高于此值则不缓存。
内容尺寸如果低于此值则不缓存。
选中后,Gzip等压缩后的Chunked内容可以直接缓存,无需检查内容长度。
选中后,支持缓存源站返回的某个区间的内容,该内容通过
允许缓存的HTTP状态码列表。
当响应的Cache-Control为这些值时不缓存响应内容,而且不区分大小写。
选中后,当响应的Header中有Set-Cookie时不缓存响应内容。
选中后,当请求的Header中含有Pragma: no-cache或Cache-Control: no-cache时,会跳过缓存直接读取源内容。
特殊情况下才需要开启,可能会降低缓存命中率。
特殊情况下才需要开启,可能会降低缓存命中率。
| 启用请求限制 |
|
| 最大并发连接数 |
当前服务最大并发连接数,超出此限制则响应用户 |
| 单IP最大并发连接数 |
单IP最大连接数,统计单个IP总连接数时不区分服务,超出此限制则响应用户 |
| 单连接带宽限制 |
客户端单个请求每秒可以读取的下行流量。 |
| 单请求最大尺寸 |
单个请求能发送的最大内容尺寸。 |
| 全局WAF策略 |
{{vFirewallPolicy.name}} [{{vFirewallPolicy.modeInfo.name}}]
当前集群没有设置WAF策略,当前配置无法生效。
当前服务所在集群的设置。 |
| 启用WAF |
选中后,表示启用当前网站的WAF功能。 |
| 启用系统全局规则 |
选中后,表示使用系统全局WAF策略中定义的规则。 |
| 对象 | 数值 | 占比 |
|---|---|---|
| "+e.keys[0]+" | "+t+" | ",0);0
| 全局缓存策略 |
{{vCachePolicy.name}}
当前集群没有设置缓存策略,当前配置无法生效。
使用当前服务所在集群的设置。 |
| 启用缓存 |
|
| 收起选项更多选项 | |
| 使用默认缓存条件 |
选中后使用系统全局缓存策略中已经定义的默认缓存条件。 |
| 添加X-Cache Header |
选中后自动在响应Header中增加 |
| 添加Age Header |
选中后自动在响应Header中增加 |
| 支持源站控制有效时间 |
选中后表示支持源站在Header中设置的 |
| 允许PURGE |
允许使用PURGE方法清除某个URL缓存。 |
| PURGE Key * |
[随机生成]。需要在PURGE方法调用时加入 |
| 通用Header列表 |
需要检查的Header列表。 |
| Header值超出长度 |
字节
超出此长度认为匹配成功,0表示不限制。 |
| 统计对象组合 * |
|
| 统计周期 * |
秒
|
| 阈值 * |
对于网站类应用来说,当前阈值设置的太低,有可能会影响用户正常访问。 |
| 检查请求来源指纹 |
在接收到HTTPS请求时尝试检查请求来源的指纹,用来检测代理服务和爬虫攻击;如果你在网站前面放置了别的反向代理服务,请取消此选项。 |
| 忽略常见文件 |
忽略js、css、jpg等常见在网页里被引用的文件名。 |
| 来源域名允许为空 |
允许不带来源的访问。 |
| 来源域名允许一致 |
允许来源域名和当前访问的域名一致,相当于在站内访问。 |
| 允许的来源域名 |
允许的来源域名列表,比如 |
| 禁止的来源域名 |
禁止的来源域名列表,比如 |
| 同时检查Origin |
如果请求没有指定Referer Header,则尝试检查Origin Header,多用于跨站调用。 |
暂时还没有缓存条件。
| 缓存条件 | 分组关系 | 缓存时间 | 操作 | |
|---|---|---|---|---|
|
|
和 或 或 | {{cacheRef.life.count}} {{timeUnitName(cacheRef.life.unit)}} 不缓存 | 修改 暂停恢复 删除 |
所有条件匹配顺序为从上到下,可以拖动左侧的排序。服务设置的优先级比全局缓存策略设置的优先级要高。
+添加不缓存条件| 启用CORS自适应跨域 |
启用后,自动在响应Header中增加对应的 |
| 允许的请求方法列表 |
[添加默认]。 |
| 预检结果缓存时间 |
秒
|
| 允许服务器暴露的Header |
|
| 实际请求方法 |
|
| 仅OPTIONS有效 |
选中后,表示当前CORS设置仅在OPTIONS方法请求时有效。 |
| 启用Websocket |
|
| 允许所有来源域(Origin) |
选中表示允许所有的来源域。 |
| 允许的来源域列表(Origin) |
只允许在列表中的来源域名访问Websocket服务。 |
| 是否传递请求来源域 |
选中表示把接收到的请求中的Origin字段传递到源站。 |
| 指定传递的来源域 |
指定向源站传递的Origin字段值。 |
| 握手超时时间(Handshake) |
秒
0表示使用默认的时间设置。 |
暂时还没有重写规则。
| 匹配规则 | 转发目标 | 转发方式 | 状态 | 操作 | |
|---|---|---|---|---|---|
| {{rule.pattern}}
|
{{rule.replace}} | 隐式 显示 |
|
修改 删除 |
拖动左侧的图标可以对重写规则进行排序。
| 启用5秒盾 |
|
| 加入IP白名单 |
选中后,表示验证通过后,将访问者IP加入到临时白名单中,此IP下次访问时不再校验5秒盾;此白名单只对5秒盾有效,不影响其他规则。此选项主要用于可能无法正常使用Cookie的网站。 |
| 例外URL |
如果填写了例外URL,表示这些URL跳过5秒盾不做处理。 |
| 限制URL |
如果填写了支持URL,表示只对这些URL进行5秒盾处理;如果不填则表示支持所有的URL。 |
| 启用过时缓存 |
|
| 有效期 |
缓存在过期之后,仍然保留的时间。 |
| 状态码 | 在这些状态码出现时使用过时缓存,默认支持 |
| 支持stale-if-error |
选中后,支持在Cache-Control中通过 |
支持普通域名(
只支持普通域名(
| 启用防盗链 |
选中后表示开启防盗链。 |
| 允许直接访问网站 |
允许用户直接访问网站,用户第一次访问网站时来源域名通常为空。 |
| 来源域名允许一致 |
允许来源域名和当前访问的域名一致,相当于在站内访问。 |
| 允许的来源域名 |
允许的其他来源域名列表,比如 |
| 禁止的来源域名 |
禁止的来源域名列表,比如 |
| 同时检查Origin |
如果请求没有指定Referer Header,则尝试检查Origin Header,多用于跨站调用。 |
| 自动跳转到HTTPS |
开启后,所有HTTP的请求都会自动跳转到对应的HTTPS URL上,
|
开启后,所有HTTP的请求都会自动跳转到对应的HTTPS URL上,
| 状态码 | |
| 跳转后域名或IP地址 |
默认和用户正在访问的域名或IP地址一致,不填写就表示使用当前的域名。 |
| 端口 |
默认端口为443。 |
| 允许的域名 |
如果填写了允许的域名,那么只有这些域名可以自动跳转。 |
| 排除的域名 |
如果填写了排除的域名,那么这些域名将不跳转。 |
| 动作类型 * |
{{action.description}} |
| 封禁范围 |
只封禁用户对当前网站的访问,其他服务不受影响。 封禁用户对所有网站的访问。 |
| 封禁时长 |
秒
|
| 最大封禁时长 |
秒
选填项。如果同时填写了封禁时长和最大封禁时长,则会在两者之间随机选择一个数字作为最终的封禁时长。 |
| 有效时间 |
秒
验证通过后在这个时间内不再验证;如果为空或者为0表示默认。 |
| 最多失败次数 |
次
允许用户失败尝试的最多次数,超过这个次数将被自动加入黑名单;如果为空或者为0表示默认。 |
| 失败拦截时间 |
秒
在达到最多失败次数(大于0)时,自动拦截的时间;如果为空或者为0表示默认。 |
| 有效时间 |
秒
验证通过后在这个时间内不再验证;如果为空或者为0表示默认。 |
| 最多失败次数 |
次
允许用户失败尝试的最多次数,超过这个次数将被自动加入黑名单;如果为空或者为0表示默认。 |
| 失败拦截时间 |
秒
在达到最多失败次数(大于0)时,自动拦截的时间;如果为空或者为0表示默认。 |
| 有效时间 |
秒
验证通过后在这个时间内不再验证。 |
| 有效时间 |
秒
验证通过后在这个时间内不再验证。 |
| IP名单类型 * | |
| 选择IP名单 * |
如不选择,则自动添加到当前策略的IP名单中。 |
| 级别 | |
| 超时时间 |
秒
0表示不超时。 |
| 标签 * |
|
| 状态码 * | |
| 网页内容 | |
| 状态码 * | |
| 跳转到URL | |
| 下一个分组 * | |
| 下一个分组 * | |
| 下一个规则集 * |
系统总是会先执行记录日志、标签等不会修改请求的动作,再执行阻止、验证码等可能改变请求的动作。
`}),Vue.component("http-auth-config-box",{props:["v-auth-config","v-is-location"],data:function(){let e=this.vAuthConfig;return null==(e=null==e?{isPrior:!1,isOn:!1}:e).policyRefs&&(e.policyRefs=[]),{authConfig:e}},methods:{isOn:function(){return(!this.vIsLocation||this.authConfig.isPrior)&&this.authConfig.isOn},add:function(){let t=this;teaweb.popup("/servers/server/settings/access/createPopup",{callback:function(e){t.authConfig.policyRefs.push(e.data.policyRef),t.change()},height:"28em"})},update:function(e,t){teaweb.popup("/servers/server/settings/access/updatePopup?policyId="+t,{callback:function(e){teaweb.success("保存成功",function(){teaweb.reload()})},height:"28em"})},remove:function(e){this.authConfig.policyRefs.$remove(e),this.change()},methodName:function(e){switch(e){case"basicAuth":return"BasicAuth";case"subRequest":return"子请求";case"typeA":return"URL鉴权A";case"typeB":return"URL鉴权B";case"typeC":return"URL鉴权C";case"typeD":return"URL鉴权D"}return""},change:function(){let e=this;setTimeout(function(){e.$emit("change",this.authConfig)},100)}},template:`| 启用鉴权 |
|
| 名称 | 鉴权方法 | 参数 | 状态 | 操作 |
|---|---|---|---|---|
| {{ref.authPolicy.name}} | {{methodName(ref.authPolicy.type)}} |
{{ref.authPolicy.params.users.length}}个用户
[{{ref.authPolicy.params.method}}]
{{ref.authPolicy.params.url}}
{{ref.authPolicy.params.signParamName}}/有效期{{ref.authPolicy.params.life}}秒
有效期{{ref.authPolicy.params.life}}秒
有效期{{ref.authPolicy.params.life}}秒
{{ref.authPolicy.params.signParamName}}/{{ref.authPolicy.params.timestampParamName}}/有效期{{ref.authPolicy.params.life}}秒
|
|
修改 删除 |
暂时还没有Header。
| 名称 | 值 | 操作 |
|---|---|---|
|
{{header.name}}
|
{{header.value}} | 修改 删除 |
| 删除Header |
|
| 非标Header |
将会覆盖已有的同名Header。
暂时还没有Header。
| 名称 | 值 | 操作 |
|---|---|---|
|
{{header.name}}
建议使用当前页面下方的"CORS自适应跨域"功能代替Access-Control-*-*相关Header。
|
{{header.value}} | 修改 删除 |
| 删除Header |
|
| 非标Header |
|
| CORS自适应跨域 |
已启用未启用 [修改]
启用后,服务器可以服务器会自动生成 |
| 合并重复的路径分隔符 |
合并URL中重复的路径分隔符为一个,比如 |
为了给您提供更好的服务,我们正在升级网站,请稍后重新访问。
Request ID: \${requestId}. `}},template:`| 自定义页面 |
根据响应状态码返回一些自定义页面,比如404,500等错误页面。 |
||||||||||
| 临时关闭页面 |
开启临时关闭页面时,所有请求都会直接显示此页面。可用于临时升级网站或者禁止用户访问某个网页。 |
| 启用内容压缩 |
|
| 压缩级别 |
级别越高,压缩比例越大。 |
| 支持的扩展名 |
含有这些扩展名的URL将会被压缩,不区分大小写。 |
| 例外扩展名 |
含有这些扩展名的URL将不会被压缩,不区分大小写。 |
| 支持的MimeType |
响应的Content-Type里包含这些MimeType的内容将会被压缩。 |
| 压缩算法 |
选择支持的压缩算法和优先顺序,拖动图表排序。 |
| 支持已压缩内容 |
支持对已压缩内容尝试重新使用新的算法压缩;不选中表示保留当前的压缩格式。 |
| 内容最小长度 |
0表示不限制,内容长度从文件尺寸或Content-Length中获取。 |
| 内容最大长度 |
0表示不限制,内容长度从文件尺寸或Content-Length中获取。 |
| 支持Partial Content |
支持对分区内容(PartialContent)的压缩;除非客户端有特殊要求,一般不需要启用。 |
| 匹配条件 |
|
| 启用CC无感防护 |
|
| 例外URL |
如果填写了例外URL,表示这些URL跳过CC防护不做处理。 |
| 限制URL |
如果填写了支持URL,表示只对这些URL进行CC防护处理;如果不填则表示支持所有的URL。 |
| 检查请求来源指纹 |
在接收到HTTPS请求时尝试检查请求来源的指纹,用来检测代理服务和爬虫攻击;如果你在网站前面放置了别的反向代理服务,请取消此选项。 |
| 启用GET302校验 |
选中后,表示自动通过GET302方法来校验客户端。 |
{{description}}
[已打开] {{realDescription}}。
| 启用字符编码 |
|
| 选择字符编码 | |
| 字符编码是否大写 |
选中后将指定的字符编码转换为大写,比如默认为utf-8,选中后将改为UTF-8。 |
| 启用 | 启用后,将会在响应的Header中添加 |
| 覆盖源站设置 |
选中后,会覆盖源站Header中已有的 |
| 自动计算时间 | 根据已设置的缓存有效期进行计算。 |
| 强制缓存时间 |
从客户端访问的时间开始要缓存的时长。 |
| 启用访问日志 |
|
| 基础信息 | 默认记录客户端IP、请求URL等基础信息。 |
| 高级信息 |
在基础信息之外要存储的信息。 记录"请求Body"将会显著消耗更多的系统资源,建议仅在调试时启用,最大记录尺寸为2MB。 |
| 要存储的访问日志状态码 |
|
| 记录客户端中断日志 |
以 |
| 只记录WAF相关日志 |
选中后只记录WAF相关的日志。通过此选项可有效减少访问日志数量,降低网络带宽和存储压力。 |
| 启用Gzip压缩 |
|
| 压缩级别 |
级别越高,压缩比例越大。 |
| Gzip内容最小长度 |
0表示不限制,内容长度从文件尺寸或Content-Length中获取。 |
| Gzip内容最大长度 |
0表示不限制,内容长度从文件尺寸或Content-Length中获取。 |
| 匹配条件 |
|
| 启用脚本设置 | |
| 脚本代码 | {{comment}} |
| 启用源站 |
|
| 回源主机名(Host) |
请求源站时的Host,用于修改源站接收到的域名 ,"跟随CDN域名"是指源站接收到的域名和当前CDN访问域名保持一致 ,"跟随源站"是指源站接收到的域名仍然是填写的源站地址中的信息,不随代理服务域名改变而改变 ,自定义Host内容中支持请求变量。 |
| 回源主机名移除端口 | 选中后表示移除回源主机名中的端口部分。 |
| 回源跟随 |
选中后,自动读取源站跳转后的网页内容。 |
| 自动添加的Header |
选中后,会自动向源站请求添加这些Header。 |
| 请求URI(RequestURI) |
\${requestURI}为完整的请求URI,可以使用类似于"\${requestURI}?arg1=value1&arg2=value2"的形式添加你的参数。 |
| 去除URL前缀(StripPrefix) |
可以把请求的路径部分前缀去除后再查找文件,比如把 /web/app/index.html 去除前缀 /web 后就变成 /app/index.html。 |
| 是否自动刷新缓存区(AutoFlush) |
开启后将自动刷新缓冲区数据到客户端,在类似于SSE(server-sent events)等场景下很有用。 |
| 源站连接失败超时时间 |
秒
连接源站失败的最大超时时间,0表示不限制。 |
| 源站读取超时时间 |
秒
读取内容时的最大超时时间,0表示不限制。 |
| 源站最大并发连接数 |
源站可以接受到的最大并发连接数,0表示使用系统默认。 |
| 源站最大空闲连接数 |
当没有请求时,源站保持等待的最大空闲连接数量,0表示使用系统默认。 |
| 源站最大空闲超时时间 |
秒
源站保持等待的空闲超时时间,0表示使用默认时间。 |
| PROXY Protocol |
选中后表示启用PROXY Protocol,每次连接源站时都会在头部写入客户端地址信息。 |
| PROXY Protocol版本 |
发送类似于 发送二进制格式的头部信息。 |
| 启用访客IP设置 |
选中后表示使用自定义的请求变量获取客户端IP。 |
| 获取IP方式 * |
{{option.description}} |
| 读取IP变量值 * |
通过此变量获取用户的IP地址。具体可用的请求变量列表可参考官方网站文档。 |
| 启用静态资源分发 |
|
| 静态资源根目录 |
可以访问此根目录下的静态资源。 |
| 首页文件 |
在URL中只有目录没有文件名时默认查找的首页文件。 |
| 去除URL前缀 |
可以把请求的路径部分前缀去除后再查找文件,比如把 /web/app/index.html 去除前缀 /web 后就变成 /app/index.html。 |
| 路径解码 |
是否对请求路径进行URL解码,比如把 /Web+App+Browser.html 解码成 /Web App Browser.html 再查找文件。 |
| 是否终止请求 |
在找不到要访问的文件的情况下是否终止请求并返回404,如果选择终止请求,则不再尝试反向代理等设置。 |
| 启用WebP压缩 |
选中后表示开启自动WebP压缩;只有满足缓存条件的图片内容才会被转换。 |
| 图片质量 |
%
取值在0到100之间,数值越大生成的图像越清晰,同时文件尺寸也会越大。 |
| 支持的扩展名 |
含有这些扩展名的URL将会被转成WebP,不区分大小写。 |
| 支持的MimeType |
响应的Content-Type里包含这些MimeType的内容将会被转成WebP。 |
| 内容最小长度 |
0表示不限制,内容长度从文件尺寸或Content-Length中获取。 |
| 内容最大长度 |
0表示不限制,内容长度从文件尺寸或Content-Length中获取。 |
| 匹配条件 |
|
| 当前正在使用的算法 |
{{scheduling.name}} [修改]
{{scheduling.description}} |
| 状态码 | |
| 提示内容 | |
| 封禁时长 |
秒
触发阻止动作时,封禁客户端IP的时间。 |
| 最大封禁时长 |
秒
如果最大封禁时长大于封禁时长({{timeout}}秒),那么表示每次封禁的时候,将会在这两个时长数字之间随机选取一个数字作为最终的封禁时长。 |
{{param.description.replace("\${optionName}", name)}}
{{name}}名称,类似于
{{name}}参数名称,比如
URL前缀,有此前缀的URL都将会被匹配,通常以
要排除的URL前缀,有此前缀的URL都将会被匹配,通常以
检查URL路径是为
支持全站所有URL。
完整的URL路径,通常以
要排除的完整的URL路径,通常以
匹配URL的正则表达式,比如
不要匹配URL的正则表达式,意即只要匹配成功则排除此条件,比如
匹配User-Agent的正则表达式,比如
匹配User-Agent的正则表达式,比如
其中可以使用变量,类似于
要匹配的正则表达式,比如
要对比的数字。
参数值除以10的余数,在0-9之间。
参数值除以100的余数,在0-99之间。
和参数值一致的字符串。
和参数值不一致的字符串。
参数值的前缀。
参数值的后缀为此字符串。
参数值包含此字符串。
参数值不包含此字符串。
添加参数值列表。
添加参数值列表。
添加扩展名列表,比如
添加MimeType列表,类似于
要对比的IP。
参数中IP转换成整数后除以10的余数,在0-9之间。
参数中IP转换成整数后除以100的余数,在0-99之间。
选中后表示对比时忽略参数值的大小写。
在此周期内同一对象累积为同一数据。
The site traffic has exceeded the limit. Please contact with the site administrator.
Request ID: \${requestId}. `}},template:`| 启用流量限制 |
注意:由于流量统计是每5分钟统计一次,所以超出流量限制后,对用户的提醒也会有所延迟。 |
| 日流量限制 |
|
| 月流量限制 |
|
| 网页提示内容 |
[使用模板]。当达到流量限制时网页显示的HTML内容,不填写则显示默认的提示内容,适用于网站类服务。 |
| 有效时间 |
秒
验证通过后在这个时间内不再验证,默认600秒。 |
| 最多失败次数 |
次
允许用户失败尝试的最多次数,超过这个次数将被自动加入黑名单。如果为空或者为0,表示不限制。 |
| 失败拦截时间 |
秒
在达到最多失败次数(大于0)时,自动拦截的时长;如果为0表示不自动拦截。 |
| 失败全局封禁 |
是否在失败时全局封禁,默认为只封禁对单个网站的访问。 |
| 验证码中数字个数 | |
| 定制UI | |
| 页面标题 | |
| 按钮标题 |
类似于 |
| 显示请求ID |
在界面上显示请求ID,方便用户报告问题。 |
| CSS样式 | |
| 页头提示 |
类似于 |
| 页尾提示 |
支持HTML。 |
| 页面模板 |
模板中必须包含\${body}表示验证码表单!整个页面的模板,支持HTML,其中必须使用 |
| 启用UA名单 |
选中后表示开启UserAgent名单。 |
||||||
| UA名单 |
|
| 启用 |
启用后,WAF将会尝试自动检测并阻止SYN Flood攻击。此功能需要节点已安装并启用nftables或Firewalld。 |
| 空连接次数 |
次/分钟
超过此数字的"空连接"将被视为SYN Flood攻击,为了防止误判,此数值默认不小于5。 |
| 封禁时长 |
秒
|
| 忽略局域网访问 |
|
|
|
IP | 类型 | 级别 | 过期时间 | 备注 | 操作 |
|---|---|---|---|---|---|---|
|
|
{{item.region}}
| {{item.isp}}
添加于 {{item.createdTime}}
@
[黑白名单:{{item.list.name}}]
[黑白名单:{{item.list.name}}
[服务:{{item.policy.server.name}}]
[服务:{{item.policy.server.name}}]
[策略:{{item.policy.name}}]
|
IPv4 IPv4 IPv6 所有IP | {{item.eventLevelName}} - |
{{item.expiredTime}}
不过期
已过期
{{formatSeconds(item.lifeSeconds)}}
|
{{item.reason}} - | 日志 修改 删除 |
| 启用 | |
| SMTP地址 * |
SMTP主机地址,比如 |
| SMTP端口 * |
SMTP主机端口,比如 |
| 用户名 * |
通常为发件人邮箱地址。 |
| 密码 * |
邮箱登录密码或授权码,如不清楚,请查询对应邮件服务商文档。。 |
| 发件人Email * |
使用的发件人邮箱地址,通常和发件用户名一致。 |
| 发件人名称 |
使用的发件人名称,默认使用系统设置的产品名称。 |
| 发送测试 | [点此测试] |
常用时间: 1小时 | 1天 | 3天 | 1周 | 30天
`}),Vue.component("label-on",{props:["v-is-on"],template:'| 启用健康检查 |
通过访问节点上的网站URL来确定节点是否健康。 |
||||||||
| 检测URL * |
拼接后的检测URL: |
||||||||
| 检测时间间隔 |
两次检查之间的间隔。 |
||||||||
| 自动下线IP |
选中后系统会根据健康检查的结果自动标记节点IP节点的上线/下线状态,并可能自动同步DNS设置。注意:免费版的只能整体上下线整个节点,商业版的可以下线单个IP。 |
||||||||
| 连续上线次数 |
连续{{healthCheck.countUp}}次检查成功后自动恢复上线。 |
||||||||
| 连续下线次数 |
连续{{healthCheck.countDown}}次检查失败后自动下线。 |
||||||||
| 允许的状态码 |
允许检测URL返回的状态码列表。 |
||||||||
| 超时时间 |
读取检测URL超时时间。 |
||||||||
| 连续尝试次数 |
如果读取检测URL失败后需要再次尝试的次数。 |
||||||||
| 每次尝试间隔 |
如果读取检测URL失败后再次尝试时的间隔时间。 |
||||||||
| 终端信息(User-Agent) |
发送到服务器的User-Agent值,不填写表示使用默认值。 |
||||||||
| 只基础请求 |
只做基础的请求,不处理反向代理(不检查源站)、WAF等。 |
||||||||
| 记录访问日志 |
记录健康检查的访问日志。 |
||||||||
{{message}}
[{{log.createdTime}}][{{log.createdTime}}][{{log.tag}}]{{log.description}} 共{{log.count}}条 {{log.server.name}}
| 参数 |
{{param.description}} |
| 操作符 | |
| {{param.valueName}} |
%
%
/秒
|
{{currentAction.description}}
接收通知的URL。
| 阈值 | 动作 | ||||||
|---|---|---|---|---|---|---|---|
|
|
|
| 使用的DNS解析库 |
边缘节点使用的DNS解析库。修改此项配置后,需要重启节点进程才会生效。 |