Child pages
  • Add HTTP Push CDN Resource with Advanced Settings
Skip to end of metadata
Go to start of metadata

To create an HTTP resource with advanced settings, use the following request:

POST /cdn_resources.xml
POST /cdn_resources.json

XML Request example

curl -i -X POST -u user:userpass http://onapp.test/cdn_resources.xml -H 'Accept:application/xml' -H 'Content-type: application/xml' -d '<cdn_resource><resource_type>HTTP_PUSH</resource_type><cdn_hostname>xmlcdn.apitest.com</cdn_hostname><cdn_ssl_certificate_id>ssl_sert_id</cdn_ssl_certificate_id><edge_group_ids type="array"><edge_group_id type="integer">225</edge_group_id></edge_group_ids><storage_server_location>816382921</storage_server_location><ftp_password>qwerty123</ftp_password><secondary_hostnames type="array"><secondary_hostname>name13311.co</secondary_hostname><secondary_hostname>name11122.co</secondary_hostname></secondary_hostnames><ip_access_policy>ALLOW_BY_DEFAULT</ip_access_policy><ip_addresses>111.111.11.111</ip_addresses><hotlink_policy>ALLOW_BY_DEFAULT</hotlink_policy><domains>example.com</domains><url_signing_on>1</url_signing_on><url_signing_key>12345qwertyyu</url_signing_key><country_access_policy>ALLOW_BY_DEFAULT</country_access_policy><countries>AO</countries><countries>BH</countries><limit_rate>150</limit_rate><limit_rate_after>1</limit_rate_after><password_on>1</password_on><form_pass><user type="array"><string>user123new</string><string>user234new</string></user><pass type="array"><string>passw123new</string><string>passw234new</string></pass></form_pass><password_unauthorized_html>YOU ARE NOT AUTHORIZED</password_unauthorized_html></cdn_resource>'

 JSON Request example

curl -i -X POST -H 'Accept: application/json' -H 'Content-type: application/json' -u user:userpass --url http://onapp.test/cdn_resources.json -d '{"cdn_resource":{"resource_type":"HTTP_PUSH","cdn_hostname":"jsoncdn.apitest.com","cdn_ssl_certificate_id":"ssl_cert_id","edge_group_ids":["225"],"storage_server_location":"816382921", "ftp_password":"qwerrtyuio","secondary_hostnames":["test122.com","test234.com"],"ip_access_policy":"ALLOW_BY_DEFAULT","ip_addresses":"111.111.11.111,222.222.22.222","country_access_policy":"BLOCK_BY_DEFAULT","countries":["AL","AR","GT","HR"],"hotlink_policy":"ALLOW_BY_DEFAULT","domains":"mnw.netggl.com","url_signing_on":"1","url_signing_key":"12345qwqew","password_on":1,"form_pass":{"user":["user190","user278"],"pass":["pass123","pass2348"]},"password_unauthorized_html":"<b>You are blocked!</b>","mp4_pseudo_on":"1","mp4_pseudo_on":"1","flv_pseudo_on":"1","limit_rate":"150","limit_rate_after":"1"}}'


Where:

(lightbulb) cdn_hostname* - indicate the hostname which will serve static content. Specify the following fourth-level domain name for this parameter to create a resource with SSL enabled: "example.r.worldssl.net", where replace the example with the desired name.

If the CDN hostname ends with '.r.worldssl.net', SSL will be enabled automatically.

resource_type* - HTTP_PUSH

(lightbulb)cdn_ssl_certificate_id - the ID of the custom SNI SSL certificate you want to add to the resource. You should only specify the IDs of those certificates that were added by the user with whom the new resource will be associated.

edge_group_ids* - indicate the ID(s) of required CDN edge groups

storage_server_location - the ID of the storage server location which should be assigned to this resource. To get the ID of the required storage server location, use the request described at the Get List of Available Storage Locations section. If no location set, the first active storage server is chosen automatically.

ftp_password* - indicate the FTP server password. It should consist of 6-32 alphanumeric symbols.

secondary_hostnames - an array of secondary CDN hostnames. You can add up to 7 secondary CDN hostnames.

<secondary_hostnames type="array">	
	<secondary_hostname>test100.com</secondary_hostname>
	<secondary_hostname>test200.com</secondary_hostname>
</secondary_hostnames>

To be able to use a secondary hostname for the CDN resource with SSL enabled, you require an SSL certificate for your custom hostname. For help with questions about the SSL certificate purchase, please contact OnApp support.

ip_access_policy - configure a rule to control access to the CDN resource's content for a range of IP addresses:

  • ALLOW_BY_DEFAULT - allow IP access policy by default, except for IP addresses specified in the ip_addresses parameter
  • BLOCK_BY_DEFAULT - block IP access policy by default, except for IP addresses specified in the ip_addresses parameter
  • NONE - switch off the IP access policy

ip_addresses - IP address(es) related to ip_access_policy parameter; The comma-separated list of IP addresses or IP ranges allowed/blocked by default. Use the following format "10.10.10.10, 20.20.20.0/24"

hotlink_policy - configure hotlink policy properties to protect your content from unauthorized hotlinking:

  • ALLOW_BY_DEFAULT - allow hotlink policy by default, except for domains specified in the domains parameter
  • BLOCK_BY_DEFAULT - block hotlink_policy by default, except for domains specified in the domains parameter
  • NONE - switch off the rule

domains - domains related to hotlink_policy

country_access_policy - configure a rule to control access to the CDN resource's content for specified countries:

  • ALLOW_BY_DEFAULT - allow country access policy by default, except for countries specified in the countries parameter
  • BLOCK_BY_DEFAULT - block country access policy by default, except for countries specified in the countries parameter
  • NONE - switch off the country access policy

countries - country codes, related to country_access_policy in ISO 3166-1 alpha-2 format.

url_signing_on - set 1 to enable and protect your files from unauthorized access with a key

url_signing_key - input the key for URL signing. Input letters and digits (6-32 symbols).

form_pass - an array with usernames and passwords to access the resource:

pass - the user password.

user - the user login, which may consist of letters [A-Z a-z] (case insensitive manner), digits [0-9], underscore [ _ ], and dash [ - ].The first symbol should be alphabetic. The username cannot be duplicated.

password_unauthorized_html - text, which will be displayed in case of fail of authentication. Max 1000 chars.

mp4_pseudo_on - set 1 to enable MP4 preudo streaming, otherwise set 0

flv_pseudo_on - set 1 to enable FLV preudo streaming, otherwise set 0

Nginx Settings

  • limit_rate - sets speed limit of a response to a client (per request) in KB/s. Maximum limit rate value - 2147483647 KB/s
  • limit_rate_after - sets the amount after which the speed of a response to a client will be limited in KB. Maximum limit rate after value -2147483647 KB

 

Page History

v. 4.0

  • Updated cdn_hostname parameter with ability to enable SSL
  • Added cdn_ssl_certificate_id parameter that enables a user to associate a custom SNI SSL certificate with a CDN resource

v. 3.1.1

  • Added storage_server_location parameter.

https://docs.onapp.com/display/40API/Add+HTTP+Push+CDN+Resource+with+Advanced+Settings

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))
  • No labels