Making query strings agnostic

Under normal circumstances, Fastly would consider these URLs different objects that are cached separately:

  • http://example.com
  • http://example.com?asdf=asdf
  • http://example.com?asdf=zxcv

It is possible, however, to have them all ignore the query string and return the same cached resource.

  1. Log in to the Fastly web interface.
  2. From the All services page, select the appropriate service. You can use the search box to search by ID, name, or domain.
  3. Click the Edit configuration button and then select the option to clone the active version. The Domains page appears.
  4. Click the Content link. The Content page appears.
  5. Click the Create header button. The Create a header window appears.

    the Header window

  6. Fill out the Create a header fields as follows:
    • In the Name field, enter a description for the header (e.g., New query string name).
    • From the Type menu, select Request, and from Action menu, select Set.
    • In the Destination field, enter url.
    • In the Source field, enter req.url.path.
    • From the Ignore if set menu, select No.
    • Set the Priority field to whatever priority you want.
  7. Click the Create button to create the new header. The new header you created appears on the Content page.
  8. Click the Activate button to deploy your configuration changes.

The request will be sent to the origin as a URL without the query string.

For more information about controlling caching, see our documentation on cache freshness.

Back to Top