配置参数
配置参数提供了实例内组件的公共参数配置,通过修改配置参数,可以调整组件的相关功能。
约束与限制
修改实例配置参数会引起APIG业务中断,建议在无业务运行或业务低峰时修改配置参数。
操作步骤
- 进入API网关控制台页面。
- 在左侧导航栏选择“实例管理”。
- 在待配置参数的实例上,单击“查看控制台”或实例名称。
- 单击“配置参数”页签,找到您需要调整的配置项并进行修改。不同的实例规格展示的配置参数会存在不同,具体以界面为准。
表1 实例配置参数说明 参数
说明
ratelimit_api_limits
API全局默认流控值,默认值为200次/秒。API未绑定流控策略时,执行此默认流控;API绑定流控策略时,则执行绑定的流控策略。流控策略的API流量限制值不能超过API全局默认流控值。
request_body_size
API请求中允许携带的Body大小上限,默认值为12MB,可修改范围为1MB~9536MB。
backend_timeout
后端响应超时时间上限,默认值为60000ms,可修改范围为1ms~600000ms。
app_token
app_token认证方式开关,默认关闭。启用后,可在API请求中使用获取的access_token进行API的调用认证。
- app_token_expire_time:access_token的有效时间,在access_token到期前,请及时获取新的access_token并更新,避免影响正常使用。
- refresh_token_expire_time:refresh_token的有效时间。refresh_token用于获取新的access_token。
- app_token_uri:获取access_token的uri。
- app_token_key:access_token的加密key。
app_api_key
app_api_key认证方式开关,默认关闭。启用后,可在API请求中添加“apikey”参数,携带凭据的Key进行API的调用认证。
app_basic
app_basic认证方式开关,默认关闭。启用后,在API请求中添加Header参数“Authorization”,参数值为"Basic"+base64(appkey:appsecret),其中appkey和appsecret分别为凭据的Key和Secret。
app_secret
app_secret认证方式开关,默认关闭。启用后,可在API请求中添加“X-HW-ID”和“X-HW-AppKey”参数,携带凭据的Key和Secret进行API的调用认证。
app_route
支持IP访问开关,默认关闭。启用后,非DEFAULT分组下的APP认证的API可以使用IP地址调用。
backend_client_certificate
后端双向认证开关,默认关闭。启用后,创建API配置后端服务时,可配置后端双向认证。
ssl_ciphers
支持配置https加密套件,默认所有的加密套件全部支持。当您绑定独立域名后,可根据需要选择支持的加密套件。
real_ip_from_xff
是否使用X-Forwarded-For头中的IP作为ACL、流控的判断依据,默认不使用。
xff_index:X-Forwarded-For头中IP的排序序号,值允许为正数、负数、0。
- xff_index值为0或正数时,获取X-Forwarded-For头中对应索引的IP。
- xff_index值为负数时,按倒序方式从X-Forwarded-For头中获取IP。
例如到达API网关的X-Forwarded-For头中依次有IP1,IP2,IP3三个IP地址,xff_index取0时获取IP1,xff_index取1时获取IP2,xff_index取-1时获取IP3,xff_index取-2时获取IP2。
vpc_name_modifiable
负载通道名称是否可修改,默认可修改。
须知:负载通道名称可修改时,当前实例的负载通道无法通过项目级负载通道管理接口操作。
app_jwt_enable
app_jwt认证方式开关,默认关闭。启用后,可在API请求中添加如下参数,携带凭据的Key和Secret以及时间戳进行API的调用认证。
- 在API请求中添加Header参数“Timestamp”,参数值为当前时间的Unix时间戳,单位为毫秒。
- 在API请求中添加Header参数“Authorization”,这一参数可以通过修改“app_jwt_auth_header”项进行配置,默认值为“Authorization”,参数值为sha256(appkey+appsecret+timestamp),且sha256加密后的字符串需为小写字母。其中appkey和appsecret分别为凭据的Key和Secret,timestamp为当前时间的Unix时间戳,单位为毫秒。
- 在API请求中添加Header参数“X-HW-ID”,参数值为凭据的Key。
public_key_enable
public_key类型签名密钥开关,默认关闭。启用后,可在签名密钥认证中使用public_key类型签名。
public_key_uri_prefix:获取public_key对应secret的uri前缀。具体uri格式为:https://{虚拟私有云访问地址}{public_key_uri_prefix}{public_key签名密钥名称}。
custom_auth_header
认证头域自定义配置开关,默认关闭。启用后,参数“app_auth_header”和“backend_sign_header”的初始值为空,与不启用效果一致。
如果配置“app_auth_header”的“参数运行值”,那么对于APP认证的API,请求header中携带APP认证信息的参数为此处“app_auth_header”的值;如果配置“backend_sign_header”的“参数运行值”,那么对于绑定HMAC或者Basic Auth类型签名密钥策略的API,API网关到后端服务的请求header中携带签名信息的参数为此处“backend_sign_header”的值。
须知:配置后会影响当前实例下所有APP认证或签名密钥策略(HMAC/Basic Auth类型),请谨慎配置。
gzip
对响应请求使用gzip压缩,用于减少公网流量。默认未配置gzip压缩,配置后1分钟生效,请谨慎修改。
启用后,可配置comp_level参数,comp_level表示压缩级别,值越大表示性能消耗越大,一般默认为6。
须知:- 响应请求体大于1KB时,您可以使用gzip压缩文件(即1KB以下的文件不做压缩)。
- gzip压缩支持的文件类型有text/xml、text/plain、text/css、application/javascript、application/x-javascript、application/rss+xml、text/javascript、image/tiff、image/svg+xml、application/json、application/xml
- 启用gzip压缩后,须在请求中添加请求头“Accept-Encoding: gzip”。
- gzip配置完成后,如需修改,至少需要1分钟后。
custom_log
自定义日志功能开关,默认关闭。开启自定义日志功能后,实例下所有API的调用日志中会在指定位置打印指定参数的值。
启用后,需单击“编辑”,添加需在调用日志中打印的参数。
须知:- 自定义日志只支持打印由客户端发起的请求信息,不支持打印在APIG中定义的常量参数和系统参数。
- 自定义日志最多可配置10个字段,且字段大小总和不得超过2KB。
- 参数值中的部分特殊字符会进行编码,例如:加号(+)会被编码为空格“ ”,双引号(")会被编码为“\x22”,反斜杠(\)会被编码为“\x5C”。
sse_strategy
SSE传输策略开关,默认关闭。启用后,支持通过使用Server-Sent Events (SSE)按照流式输出API的响应内容,可以实现逐字符渲染。
须知:sse_strategy配置完成后,如需修改,至少需要1分钟后。
vpc_name_modifiable
负载通道名称支持修改开关。开启后可修改负载通道名称,但当前实例的负载通道无法通过项目级VPC通道管理API接口操作。
vpc_health_status
负载通道后端实例健康状态显示开关,默认关闭。开关开启且负载通道的健康检查开启时,将在负载通道详情页面展示后端实例的健康状态。
request_custom_config
支持自定义配置客户端请求相关参数。
- HTTP/2:HTTP/2协议的开关,默认为开启状态。更多详情请参考支持HTTP2.0。
- request_body_timeout:客户端请求体超时时间的修改,默认为8s。网络状况差或请求体过大的情况下可适当调整该参数。
须知:客户端请求自定义配置修改完成后,如需修改,至少需要1分钟后。
api_uri_no_escape
API的URL中的Path转义处理开关。默认关闭,表示URL中的Path会进行转义处理。
开启“api_uri_no_escape”开关后,使用Path不转义的功能请参见表2。
表2 Path不转义影响的功能 功能
描述
API前端定义的Path
请求发送时使用的Path
api_uri_no_escape开关关闭
api_uri_no_escape开关开启
API定义
APIG进行匹配路由的Path
/{path}
/aa%2Faa
/aa/aa
/aa%2Faa
参数编排
后端服务参数使用的Path
-
-
/aa/aa
/aa%2Faa
http到https重定向
重定向使用的Path
-
-
/aa/aa
/aa%2Faa
策略后端
策略条件为请求入参的Path
-
-
/aa/aa
/aa%2Faa
第三方认证策略
API绑定第三方认证策略后,传递到第三方的Path
-
-
/aa/aa
/aa%2Faa
kafka日志推送策略
API绑定kafka日志推送策略后,使用的请求Path
-
-
/aa/aa
/aa%2Faa
负载通道
使用URI哈希分发算法的负载通道时,APIG用来转发的Path
-
-
/aa/aa
/aa%2Faa
FunctionGraph后端
API的后端类型为FunctionGraph时,发送到函数请求Path
-
-
/aa/aa
/aa%2Faa
自定义认证
API认证方式选择自定义认证时,发送到函数请求Path
-
-
/aa/aa
/aa%2Faa