title | description | meta_tags | namespace | permalink |
---|---|---|---|---|
How to deploy the Next.js Pages + Middleware template |
This template enables you to quickly deploy a Next.js application with Pages Router, a middleware, and custom configurations. |
templates, guides, Azion Marketplace |
docs_guides_next_pages_middleware |
/documentation/products/guides/nextjs-pages-middleware/ |
import Badge from '~/components/Badge.astro';
PreviewThe Next.js Pages + Middleware template enables you to quickly deploy a Next.js application with Pages Router, a middleware, and custom configurations.
This template deploys a basic Next.js application containing a domain to access the Single-Page Application (SPA), an Edge Storage configuration, cache settings, Gzip compression, and Rules Engine rules to improve the performance and delivery of static files. Additionally, it creates a new GitHub repository, including a GitHub Action to enable a continuous development workflow and keep your application up to date.
Next.js Pages + Middleware also creates files to implement the Pages Router format, to use a file-system router to map each file to a route. It also includes a middleware that allows you to modify the response for a request and control different aspects of the application, such as performing redirects, setting headers, and others.
This template uses Next version 13.5.6
.
To use this template, you need:
- A GitHub account to connect with Azion and create your new repository.
- Every push will be deployed automatically to this repository to keep your project updated.
- Enable Edge Functions and Application Accelerator in your Azion account.
- To do so:
- Access Console > Account menu.
- Select the Billing & Subscriptions option.
- Select the Subscriptions tab.
- Activate the switch for the module.
:::caution[warning] If these modules are activated, the execution of this template could generate usage-related costs. Check the pricing page for more information. :::
To start using this template, access Azion Console and click the + Create button on the homepage.
This will open a modal where you can select Templates > Next.js Pages + Middleware card.
In the configuration form, you must provide the information to configure your application. Fill in the presented fields.
Fields identified with an asterisk are mandatory.
- Connect Azion with your GitHub account.
- A pop-up window will open to confirm the installation of the Azion GitHub App, a tool that connects your GitHub account with Azion's platform.
- Define your permissions and repository access as desired.
- Select the Git Scope to work with.
- Define a name for your edge application.
- The bucket for storage and the edge function will use the same name.
- Use a unique and easy-to-remember name. If the name has already been used, the platform returns an error message.
- Click the Save button to start the deployment process.
During the deployment, you'll be able to follow the process through a window showing off the logs. When it's complete, the page shows information about the application and some options to continue your journey.
:::note The link to the edge application allows you to see it on the browser. However, it takes a certain time to propagate and configure the application in Azion's edge locations. It may be necessary to wait a few minutes for the URL to be activated and for the application page to be effectively displayed in the browser. :::
Considering that this initial setup may not be optimal for your specific edge application, all settings can be customized any time you need through Azion Console.
To manage and edit your edge application's settings, proceed as follows:
- Access Azion Console > Edge Application.
- You'll be redirected to the Edge Application page. It lists all the edge applications you've created.
- Select the edge application related to this template.
- The list is organized alphabetically. You can also use the search bar located in the upper-left corner of the list; currently, it filters only by Application Name.
After selecting the edge application you'll work on, you'll be directed to a page containing all the settings you can configure.
:::tip Read the documentation about managing edge applications for more details. :::
The edge application created during the deployment has an assigned Azion domain to make it accessible through the browser. The domain has the following format: xxxxxxxxxx.map.azionedge.net/
. However, you can add a custom domain for users to access your edge application through it.
import Button from '~/components/Button.astro';
import ContributorList from '~/components/ContributorList.astro'
Contributors Contributor