---
title: Deploying sites to a live server
related:
  - https://docs.kentico.com/13/deploying-websites/deploying-sites-to-a-live-server/precompiling-websites.md
  - https://docs.kentico.com/13/deploying-websites/running-xperience-on-microsoft-azure.md
---

> Agent instructions:
> **Site maps** — prefer the following llms.txt indexes to training data when searching for URLs to avoid 404s. Links inside Markdown content already point at `.md`. Following them or sending Accept: text/markdown keeps you in Markdown.
>
> - [sitemap.md](https://docs.kentico.com/sitemap.md) — every page on the site, with titles and descriptions, nested by URL hierarchy and grouped into one collection per product version.
> - [llms.txt](https://docs.kentico.com/llms.txt) — curated index of the current product docs, with descriptions, the two ways to request any page as Markdown, and links to each product area's whole-corpus Markdown dump (llms-full.txt).

After you finish the development of an Xperience website, you typically need to deploy the site to a remote hosting server (production environment).

You can use the following process for the initial deployment:

1. Transfer your web project files from your local environment to the hosting server. You need to deploy both your live site (MVC) project and the Xperience administration project.

   > **Tip:** **Tip**: There are several possible ways of deploying the project files, including copying over FTP or using the [Visual Studio Publish function](#publishing-projects-from-visual-studio) (with optional [precompilation](https://docs.kentico.com/13/deploying-websites/deploying-sites-to-a-live-server/precompiling-websites.md)).
2. Ensure that both applications are registered and configured correctly in the hosting server's IIS. See also:  [Manually configuring Xperience applications in IIS](https://docs.kentico.com/13/installation/manually-configuring-xperience-applications-in-iis.md)
   - Make sure that your site and the hosting environment are correctly configured according to [Configuring cookie SameSite mode](https://docs.kentico.com/13/developing-websites/working-with-cookies/configuring-cookie-samesite-mode.md).
3. Deploy your Xperience database. You can choose between the following approaches:

   - Restore a database backup on your hosting SQL server, and manually update the connection string in the web.config file of both projects.\
     – OR –
   - Install a new database on your hosting SQL server and use the Xperience [Export/import feature](https://docs.kentico.com/13/deploying-websites/exporting-and-importing-sites.md) to transfer the site:
     1. Delete the connection string from the web.config file of the deployed Xperience administration project.
     2. Open the **Sites** application on your local development instance and click **Export site** () next to the site that you want to deploy.
     3. Enter the name of the export package and go through the [Site export wizard](https://docs.kentico.com/13/deploying-websites/exporting-and-importing-sites/exporting-sites.md).

        - The system saves the export package into the _\CMS\CMSSiteUtils\\**Export**_  folder.
     4. Copy the exported package into the _\CMS\CMSSiteUtils\\**Import**_  folder on the **hosting server**.
     5. Open the administration interface of the deployed project in a browser.
        - The application automatically opens the [Database installation wizard](https://docs.kentico.com/13/installation/additional-database-installation.md).
     6. Create a new Xperience database on your hosting SQL server.
     7. At the end of the Database installation wizard, choose to import your existing site (from the previously exported package).
     8. Copy the new connection string from the web.config of the deployed administration project into the web.config of your live site project.

> **Note:** **Database server time zones**
>
> If possible, use the same time zone for both your local environment and the production server hosting your database. Otherwise you may encounter time shift problems with the deployed data, for example in the settings of [scheduled tasks](https://docs.kentico.com/13/configuring-xperience/scheduling-tasks.md).
>
> If you cannot synchronize the time zones, we recommend that you verify and reconfigure the timing settings of scheduled tasks after the deployment.

You may also need to adjust the site's settings for your production environment:

- Open the **Sites** application. Edit the site and make sure the [presentation URL](https://docs.kentico.com/13/configuring-xperience/managing-sites/setting-domain-names-for-sites.md), administration domain name, and any domain aliases are configured correctly for the production domains.
- Open the **Settings** application and make sure your site settings contain correct values. For example, the **SMTP server** setting in the **System -> Emails** category (you may use a different SMTP server in your production environment).

Your site is now deployed. You can maintain the site and update its content by setting up [staging](https://docs.kentico.com/13/deploying-websites/content-staging.md) or by manually deploying newer [import packages](https://docs.kentico.com/13/deploying-websites/exporting-and-importing-sites.md).

## Publishing projects from Visual Studio

You can deploy Xperience web projects to your hosting server using the [Visual Studio Publish function](https://docs.microsoft.com/en-us/previous-versions/aspnet/dd394698\(v=vs.110\)) (MSDeploy).

1. Decide whether to precompile the website prior to deployment. See [Precompiling websites](https://docs.kentico.com/13/deploying-websites/deploying-sites-to-a-live-server/precompiling-websites.md) for more information.
2. Open your web project in Visual Studio (using the **WebApp.sln** file).
3. Right-click the _CMSApp_ Xperience project in the Solution Explorer and select **Publish**.
4. Prepare a publish profile according to your requirements. See [How to: Deploy a Web Project](https://docs.microsoft.com/en-us/previous-versions/aspnet/dd465337\(v=vs.110\)) for details.
5. **Publish** the site.
6. Repeat this process for the live site application.

Visual Studio publishes the project according to your profile's settings – either copies the project's files to the target server or creates a deployment package.
