Fastly allows you to create custom HTTP responses that are served directly from the cache without storing the page on a server. Responses are commonly used to serve small static assets that seldom change and maintenance pages that are served when origins are unavailable. This tutorial shows you how to create your own responses.
A response has three basic attributes:
- Name - A human readable identifier for the response
- Status - An HTTP status code to include in the header of the response
- Content - The content to be served when delivering the response
By setting these three attributes and adding a condition to the response, you can very quickly get one up and running on your service. Let's get started!
Creating a response
Log in to the Fastly application and click the configure tab (wrench icon).
From the Service menu, select the appropriate service and then click the blue Configure button. The main controls for your selected service appear.
Click Content from the section list on the left.
In the Responses area at the bottom of the page, click the New button. The New Response window appears.
Fill out the New Response fields as follows:
- In the Name field, type a human-readable name for the response (e.g., "My First Response")
- From the Status menu, select the appropriate status (e.g., 200 OK).
- In the MIME Type field, type the content type of the response (e.g., text/html).
- In the main text field, type the response you want to appear when the conditions are met.
Click the Create button to create your custom response.
Your new response appears in the list of responses.
Click on the gear menu, and then select Request Conditions.
If you have not yet added any conditions to your service, the New Condition window will appear automatically. If the new form does not appear, click New.
Fill out the New Condition fields as follows:
- In the Name field, type a human-readable name for the condition so that it can be easily identified in the future.
- In the Apply If... field, type the condition under which the new response occurs. The condition should take the following format:
req.url ~ “^/construction/“equals the request condition you're creating the response for. The Conditions subcategory has more detailed information on conditions.
- In the Priority field, type a priority if needed. Condition priorities are only needed in "interesting" cases, and can usually be left at the default "10" for all response conditions.
Click the Create button. The condition will be created and applied to the custom response object.
Deploy the service.
Fastly will now serve your custom response page when the condition is met.