- Property Manager name: Media Origin Failover
- Behavior version: The
latest
rule format supports themediaOriginFailover
behavior v1.1. - Rule format status: Beta, possible breaking changes
- Access: Read/Write
- Allowed in includes: Not available for
latest
rule format
Specifies how edge servers respond when the origin is unresponsive, or suffers from server or content errors. You can specify how many times to retry, switch to a backup origin hostname, or configure a redirect.
Option | Type | Description | Requires | |
---|---|---|---|---|
detectOriginUnresponsive | boolean | Allows you to configure what happens when the origin is unresponsive. | {"displayType":"boolean","tag":"input","type":"checkbox"} | |
originUnresponsiveDetectionLevel | enum | Specify the level of response to slow origin connections. | detectOriginUnresponsive is true | {"displayType":"enum","options":["AGGRESSIVE","CONSERVATIVE","MODERATE"],"tag":"select"} {"if":{"attribute":"detectOriginUnresponsive","op":"eq","value":true}} |
AGGRESSIVE | Aggressive response. | |||
CONSERVATIVE | Conservative response. | |||
MODERATE | Moderate response. | |||
originUnresponsiveBlocklistOriginIp | boolean | TBD | detectOriginUnresponsive is true | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"attribute":"detectOriginUnresponsive","op":"eq","value":true}} |
originUnresponsiveBlocklistWindow | enum | TBD | originUnresponsiveBlocklistOriginIp is true | {"displayType":"enum","options":["TEN_S","THIRTY_S"],"tag":"select"} {"if":{"attribute":"originUnresponsiveBlocklistOriginIp","op":"eq","value":true}} |
TEN_S | TBD | |||
THIRTY_S | TBD | |||
originUnresponsiveRecovery | enum | This sets the recovery option. | detectOriginUnresponsive is true | {"displayType":"enum","options":["RETRY_X_TIMES","SWITCH_TO_BACKUP_ORIGIN","REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"],"tag":"select"} {"if":{"attribute":"detectOriginUnresponsive","op":"eq","value":true}} |
RETRY_X_TIMES | Retry. | |||
SWITCH_TO_BACKUP_ORIGIN | Switch to a backup origin. | |||
REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | Redirect to a different origin. | |||
originUnresponsiveRetryLimit | enum | Sets how many times to retry. | originUnresponsiveRecovery is RETRY_X_TIMES | {"displayType":"enum","options":["ONE","TWO","THREE"],"tag":"select"} {"if":{"attribute":"originUnresponsiveRecovery","op":"eq","value":"RETRY_X_TIMES"}} |
Supported values: ONE THREE TWO | ||||
originUnresponsiveBackupHost | string | This specifies the origin hostname. | originUnresponsiveRecovery is SWITCH_TO_BACKUP_ORIGIN | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"originUnresponsiveRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"}} |
originUnresponsiveAlternateHost | string | This specifies the redirect's destination hostname. | originUnresponsiveRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"originUnresponsiveRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}} |
originUnresponsiveModifyRequestPath | boolean | Modifies the request path. | originUnresponsiveRecovery is SWITCH_TO_BACKUP_ORIGIN OR originUnresponsiveRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"op":"or","params":[{"attribute":"originUnresponsiveRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"},{"attribute":"originUnresponsiveRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}]}} |
originUnresponsiveModifiedPath | string | This specifies the path to form the new URL. | originUnresponsiveModifyRequestPath is true | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"originUnresponsiveModifyRequestPath","op":"eq","value":true}} |
originUnresponsiveIncludeQueryString | boolean | Enabling this includes the original set of query parameters. | originUnresponsiveModifyRequestPath is true | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"attribute":"originUnresponsiveModifyRequestPath","op":"eq","value":true}} |
originUnresponsiveRedirectMethod | enum | Specifies the redirect response code. | originUnresponsiveRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"enum","options":["301","302"],"tag":"select"} {"if":{"attribute":"originUnresponsiveRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}} |
Supported values: 301 302 | ||||
originUnresponsiveChangeProtocol | boolean | This allows you to change the request protocol. | originUnresponsiveRecovery is SWITCH_TO_BACKUP_ORIGIN OR originUnresponsiveRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"op":"or","params":[{"attribute":"originUnresponsiveRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"},{"attribute":"originUnresponsiveRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}]}} |
originUnresponsiveProtocol | enum | Specifies which protocol to use. | originUnresponsiveChangeProtocol is true | {"displayType":"enum","options":["HTTP","HTTPS"],"tag":"select"} {"if":{"attribute":"originUnresponsiveChangeProtocol","op":"eq","value":true}} |
Supported values: HTTP HTTPS | ||||
detectOriginUnavailable | boolean | Allows you to configure failover settings when the origin server responds with errors. | {"displayType":"boolean","tag":"input","type":"checkbox"} | |
originUnavailableDetectionLevel | enum | Specify | detectOriginUnavailable is true | {"displayType":"enum","options":["RESPONSE_CODES"],"tag":"select"} {"if":{"attribute":"detectOriginUnavailable","op":"eq","value":true}} |
RESPONSE_CODES | This is the only value currently available. | |||
originUnavailableResponseCodes | string array | Specifies the set of response codes identifying when the origin responds with errors. | detectOriginUnavailable is true | {"displayType":"string array","tag":"input","todo":true} {"if":{"attribute":"detectOriginUnavailable","op":"eq","value":true}} |
originUnavailableBlocklistOriginIp | boolean | TBD | detectOriginUnavailable is true | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"attribute":"detectOriginUnavailable","op":"eq","value":true}} |
originUnavailableBlocklistWindow | enum | TBD | originUnavailableBlocklistOriginIp is true | {"displayType":"enum","options":["TEN_S","THIRTY_S"],"tag":"select"} {"if":{"attribute":"originUnavailableBlocklistOriginIp","op":"eq","value":true}} |
TEN_S | TBD | |||
THIRTY_S | TBD | |||
originUnavailableRecovery | enum | This sets the recovery option. | detectOriginUnavailable is true | {"displayType":"enum","options":["RETRY_X_TIMES","SWITCH_TO_BACKUP_ORIGIN","REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"],"tag":"select"} {"if":{"attribute":"detectOriginUnavailable","op":"eq","value":true}} |
RETRY_X_TIMES | Retry. | |||
SWITCH_TO_BACKUP_ORIGIN | Switch to a backup origin. | |||
REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | Redirect to a different origin. | |||
originUnavailableRetryLimit | enum | Sets how many times to retry. | originUnavailableRecovery is RETRY_X_TIMES | {"displayType":"enum","options":["ONE","TWO","THREE"],"tag":"select"} {"if":{"attribute":"originUnavailableRecovery","op":"eq","value":"RETRY_X_TIMES"}} |
Supported values: ONE THREE TWO | ||||
originUnavailableBackupHost | string | This specifies the origin hostname. | originUnavailableRecovery is SWITCH_TO_BACKUP_ORIGIN | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"originUnavailableRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"}} |
originUnavailableAlternateHost | string | This specifies the redirect's destination hostname. | originUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"originUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}} |
originUnavailableModifyRequestPath | boolean | Modifies the request path. | originUnavailableRecovery is SWITCH_TO_BACKUP_ORIGIN OR originUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"op":"or","params":[{"attribute":"originUnavailableRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"},{"attribute":"originUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}]}} |
originUnavailableModifiedPath | string | This specifies the path to form the new URL. | originUnavailableModifyRequestPath is true | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"originUnavailableModifyRequestPath","op":"eq","value":true}} |
originUnavailableIncludeQueryString | boolean | Enabling this includes the original set of query parameters. | originUnavailableModifyRequestPath is true | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"attribute":"originUnavailableModifyRequestPath","op":"eq","value":true}} |
originUnavailableRedirectMethod | enum | Specifies either a redirect response code. | originUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"enum","options":["301","302"],"tag":"select"} {"if":{"attribute":"originUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}} |
Supported values: 301 302 | ||||
originUnavailableChangeProtocol | boolean | Modifies the request protocol. | originUnavailableRecovery is SWITCH_TO_BACKUP_ORIGIN OR originUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"op":"or","params":[{"attribute":"originUnavailableRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"},{"attribute":"originUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}]}} |
originUnavailableProtocol | enum | Specifies either the | originUnavailableChangeProtocol is true | {"displayType":"enum","options":["HTTP","HTTPS"],"tag":"select"} {"if":{"attribute":"originUnavailableChangeProtocol","op":"eq","value":true}} |
Supported values: HTTP HTTPS | ||||
detectObjectUnavailable | boolean | Allows you to configure failover settings when the origin has content errors. | {"displayType":"boolean","tag":"input","type":"checkbox"} | |
objectUnavailableDetectionLevel | enum | Specify | detectObjectUnavailable is true | {"displayType":"enum","options":["RESPONSE_CODES"],"tag":"select"} {"if":{"attribute":"detectObjectUnavailable","op":"eq","value":true}} |
RESPONSE_CODES | This is the only value currently available. | |||
objectUnavailableResponseCodes | string array | Specifies the set of response codes identifying when there are content errors. | detectObjectUnavailable is true | {"displayType":"string array","tag":"input","todo":true} {"if":{"attribute":"detectObjectUnavailable","op":"eq","value":true}} |
objectUnavailableBlocklistOriginIp | boolean | TBD | detectObjectUnavailable is true | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"attribute":"detectObjectUnavailable","op":"eq","value":true}} |
objectUnavailableBlocklistWindow | enum | TBD | objectUnavailableBlocklistOriginIp is true | {"displayType":"enum","options":["TEN_S","THIRTY_S"],"tag":"select"} {"if":{"attribute":"objectUnavailableBlocklistOriginIp","op":"eq","value":true}} |
TEN_S | TBD | |||
THIRTY_S | TBD | |||
objectUnavailableRecovery | enum | This sets the recovery option. | detectObjectUnavailable is true | {"displayType":"enum","options":["RETRY_X_TIMES","SWITCH_TO_BACKUP_ORIGIN","REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"],"tag":"select"} {"if":{"attribute":"detectObjectUnavailable","op":"eq","value":true}} |
RETRY_X_TIMES | Retry. | |||
SWITCH_TO_BACKUP_ORIGIN | Switch to a backup origin. | |||
REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | Redirect to a different origin. | |||
objectUnavailableRetryLimit | enum | Sets how many times to retry. | objectUnavailableRecovery is RETRY_X_TIMES | {"displayType":"enum","options":["ONE","TWO","THREE"],"tag":"select"} {"if":{"attribute":"objectUnavailableRecovery","op":"eq","value":"RETRY_X_TIMES"}} |
Supported values: ONE THREE TWO | ||||
objectUnavailableBackupHost | string | This specifies the origin hostname. | objectUnavailableRecovery is SWITCH_TO_BACKUP_ORIGIN | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"objectUnavailableRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"}} |
objectUnavailableAlternateHost | string | This specifies the redirect's destination hostname. | objectUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"objectUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}} |
objectUnavailableModifyRequestPath | boolean | Enabling this allows you to modify the request path. | objectUnavailableRecovery is SWITCH_TO_BACKUP_ORIGIN OR objectUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"op":"or","params":[{"attribute":"objectUnavailableRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"},{"attribute":"objectUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}]}} |
objectUnavailableModifiedPath | string | This specifies the path to form the new URL. | objectUnavailableModifyRequestPath is true | {"displayType":"string","tag":"input","type":"text"} {"if":{"attribute":"objectUnavailableModifyRequestPath","op":"eq","value":true}} |
objectUnavailableIncludeQueryString | boolean | Enabling this includes the original set of query parameters. | objectUnavailableModifyRequestPath is true | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"attribute":"objectUnavailableModifyRequestPath","op":"eq","value":true}} |
objectUnavailableRedirectMethod | enum | Specifies a redirect response code. | objectUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"enum","options":["301","302"],"tag":"select"} {"if":{"attribute":"objectUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}} |
Supported values: 301 302 | ||||
objectUnavailableChangeProtocol | boolean | Changes the request protocol. | objectUnavailableRecovery is SWITCH_TO_BACKUP_ORIGIN OR objectUnavailableRecovery is REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION | {"displayType":"boolean","tag":"input","type":"checkbox"} {"if":{"op":"or","params":[{"attribute":"objectUnavailableRecovery","op":"eq","value":"SWITCH_TO_BACKUP_ORIGIN"},{"attribute":"objectUnavailableRecovery","op":"eq","value":"REDIRECT_TO_DIFFERENT_ORIGIN_LOCATION"}]}} |
objectUnavailableProtocol | enum | Specifies either the | objectUnavailableChangeProtocol is true | {"displayType":"enum","options":["HTTP","HTTPS"],"tag":"select"} {"if":{"attribute":"objectUnavailableChangeProtocol","op":"eq","value":true}} |
Supported values: HTTP HTTPS | ||||
clientResponseCode | string | Specifies the response code served to the client. | {"displayType":"string","tag":"input","type":"text"} | |
cacheErrorResponse | boolean | When enabled, caches the error response. | {"displayType":"boolean","tag":"input","type":"checkbox"} | |
cacheWindow | enum | This sets error response's TTL. | cacheErrorResponse is true | {"displayType":"enum","options":["ONE_S","TEN_S","THIRTY_S"],"tag":"select"} {"if":{"attribute":"cacheErrorResponse","op":"eq","value":true}} |
ONE_S | 1 second. | |||
TEN_S | 10 seconds. | |||
THIRTY_S | 30 seconds. |