If you want to rewrite the HTTP header in a request URL, you can customize HTTP request headers in a back-to-origin HTTP request. This topic describes how to customize an HTTP request header.

Background information

HTTP headers are components of the header section of request and response messages transmitted over Hypertext Transfer Protocol (HTTP).

HTTP headers include general headers, request headers, and response headers.

request
Note
  • A back-to-origin request is an HTTP message that is transmitted to the origin of a specific accelerated domain through CDN.
  • Custom HTTP requests headers are only used in the HTTP responses from the origin. The back-to-origin settings do not change the HTTP responses from CDN to end users.
  • Custom HTTP request headers do not support wildcard domains.

Procedure

  1. Log on to the Alibaba Cloud CDN console.
  2. In the left-side navigation pane, click Domain Names.
  3. On the Domain Names page, find the target domain name and click Manage.
  4. In the left-side navigation pane of the specified domain, click Back-to-origin.
  5. Click Custom Request Headers (New).
  6. On the Custom Request Headers (New) tab, click Customize.
  7. Set the parameters in the Custom Request Header dialog box that appears.
    Notice If different operations are performed on the same request header at the same time, these operations have different priorities. The priorities of the operations are as follows: Replace > Add > Change/Delete. For example, if you perform the Add and Delete operations on the same request header at the same time, the request header is added and then deleted.
    • Parameters of the Add operationadd
      Parameter Example Description
      Operation Add Adds a specific request header to the back-to-origin HTTP request.
      Request Header Custom Request Header You can use the default value, or select Custom Request Header from the drop-down list to add a custom request header.
      Header Name x-code Adds a custom request header named x-code.
      Header Value key1 You can specify multiple values for a request header. Separate multiple values with commas (,).
      key1, key2
      Allow Duplicates Yes When Allow Duplicates is set to Yes, you can add duplicate request headers. For example, x-code:key1 and x-code:key2 can coexist.
      No When Allow Duplicates is set to No, the new header value overwrites the existing one with the same header name. For example, if you add x-code:key1, and then add x-code:key2, the final header name-value pair is x-code:key2
    • Parameters of the Delete operationdelete
      Parameter Example Description
      Operation Delete Deletes all request headers that match the value of the Header Name parameter. Duplicate request headers are also deleted.
      Request Header Custom Request Header You can use the default value, or select Custom Request Header from the drop-down list to delete custom request headers.
      Header Name x-code Deletes custom request headers named x-code.
    • Parameters of the Change operationchange
      Parameter Example Description
      Operation Change You can perform the Change operation only if no duplicate request header exists.
      Request Header Custom Request Header You can use the default value, or select Custom Request Header from the drop-down list to change a custom request header.
      Header Name x-code Changes the custom request header named x-code.
      Change Value To key1, key3 You can specify multiple values for a request header. Separate multiple values with commas (,).
    • Parameters of the Replace operationraplace
      Parameter Example Description
      Operation Replace You can perform the Replace operation only if no duplicate request header exists.
      Request Header Custom Request Header You can use the default value, or select Custom Request Header from the drop-down list to replace a custom request header.
      Header Name x-code Replaces the custom request header named x-code.
      Find key Allows you to use regular expressions to search for the value that you want to replace.
      Replace With abc Allows you to use regular expressions to replace matching values.
      Match Match All When Match is set to Match All, all matching values will be replaced. For example, if you use a regular expression to replace all the "key" in x-code:key1,key2,key3 with "abc", the name-value pair is changed tox-code:abc1,abc2,abc3.
      Match the First Only When Match is set to Match the First Only, only the first matching value will be replaced. For example, if you use a regular expression to replace the first "key" in x-code:key1,key2,key3 with "abc", the name-value pair is changed to x-code:abc1,key2,key3.
  8. Click OK.