Migrate from Netlify to Nife
This guide moves a static site from Netlify to Nife. You deploy the same site on Nife, copy your build settings and environment variables, test it on its Nife URL, then switch your domain when you are ready. Your Netlify site keeps running the whole time.
Before you start
- A Nife account and an organization.
- Your site's code in a Git repository (GitHub, GitLab or Bitbucket), or a built copy of your site as a .zip, .tar or .tar.gz file.
- Access to your Netlify site settings.
How Netlify terms map to Nife
- Deploy from Git: Deploy from Git (GitHub, GitLab or Bitbucket)
- Build command: Build command
- Publish directory: Output directory
- Environment variables: Environment variables
- Drag and drop deploy: Upload Build File
- Custom domain: Custom domain (CNAME record)
Step 1: Collect your settings from Netlify
- Open your site in Netlify and go to the build settings. Note the build command and the publish directory. If your project has a netlify.toml file, both are in its [build] section.
- Note your environment variables from the site's environment variable settings.
- Note your custom domain, if you use one.
Keep the values somewhere private. Do not paste them into tickets or chat.
Step 2: Deploy your site on Nife
Option A: Deploy from Git
- In the Nife dashboard, go to Applications and select Deploy App, then choose Static Site.
- Enter a site name and choose your organization.
- Choose Git as the deployment method, then choose your Git provider and repository, and select the branch to deploy.
- Enter your build command and set the output directory to the publish directory you noted in Step 1.
- Add your environment variables.
- Click Deploy.
Option B: Upload a build
Use this if you already build your site on your own machine.
- Build your site locally, using the same build command you used on Netlify.
- Compress the contents of your output folder into a .zip, .tar or .tar.gz file.
- In the Nife dashboard, go to Applications, select Deploy App, then Static Site.
- Enter a site name, choose your organization, and select Upload Build File.
- Upload your archive and click Deploy Site.
Full walkthrough: Upload Build File.
Step 3: Set your environment variables
Copy each environment variable from Step 1 into the deployment settings on Nife. Keep the same names your code already reads.
Build-time variables, such as those used by React or Vite, are read when the site is built. If you change one later, deploy the site again so the new value is used.
Step 4: Test on your Nife URL
- When the deployment shows Active, open the site from the site list.
- Click through your main pages and check that links, images and scripts load.
- If a page is blank or assets are missing, check that your asset paths are relative, then look at the deployment logs.
Fix anything here before you change where your users go. Your Netlify site is still live, so nothing is at risk.
Step 5: Move your custom domain
Do this after the site works on its Nife URL.
- Open your site in Nife and choose Add Custom Domain.
- Enter your domain name.
- Nife shows you a CNAME value. At your DNS provider, add a CNAME record for your domain that points to that value.
- Wait for DNS to update. This can take from a few minutes up to 48 hours.
- When Nife shows the domain as verified, open your domain and check the site.
If your domain currently points to Netlify, you will replace that record. Lowering the TTL on the record a day ahead makes the switch quicker.
Full walkthrough: Custom Domains.
Step 6: Clean up
Keep the Netlify site for a few days in case you need to go back. When you are sure, remove the domain from Netlify and delete the site there.
What this guide does not cover
This guide covers static sites only. It does not cover Netlify Functions, Forms, Identity, redirect and header rules, or deploy previews. If you depend on any of these, contact Nife support at support@nife.io before you migrate, and we will help you plan it.
Troubleshooting
- Build fails: check the deployment logs. Confirm the build command works on your machine and that the output directory exists.
- Blank page: check the browser console, and make sure asset paths are relative.
- A variable is missing: compare the names with Step 1. Names are case sensitive.
- Domain does not verify: check the CNAME record name and value, and allow time for DNS to update.
Need help? Email support@nife.io.