---
title: How to upload a dotnet website on Plesk – Windows server
description: "Deploying a dotnet app on Plesk is a seamless process that can be achieved easily by following steps below. Step 1 : Click on create a new Domain or Sub-domain  and selecting the **.NET site from the list of available options**.…"
url: "https://truehost.com/support/knowledge-base/how-to-upload-a-dotnet-website-on-plesk-windows-server/"
updated: "2024-10-10"
category: Plesk
---

# How to upload a dotnet website on Plesk – Windows server

Deploying a dotnet app on Plesk is a seamless process that can be achieved easily by following steps below.

Step 1 : Click on create a new Domain or Sub-domain  and selecting the **.NET site from the list of available options**.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-37.png)

Step 2: Select .NET Site.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-38.png)

Step 3: Enter your registered domain.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-40.png)

Step 4: Go to the file Manager.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-41.png)

**NOTE:**If you had already created a domain or sub-domain, Navigate to Websites & Domains section -> Get Started and Click on **.Net Site**

![](https://truehost.com/support/wp-content/uploads/2024/10/image-231-1024x570.png)

Step 5: Upload your .NET Zip file to the document root of the domain we're to upload the site.

Access ** File Manager and upload a ZIP archive** with a .NET application by clicking “+” > Upload File.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-42-1024x596.png)

Then, we can extract the archive to the /httpdocs (For the main domain) or (any other folder for other doamins) folder (Archive > Extract Files).

![](https://truehost.com/support/wp-content/uploads/2024/10/image-44.png)

Step 6 : Delete source files :

We can now **delete the source files** because we’ll use the already-built project.

Just **move the project files** from /bin/Debug/net6.0/publish to the /domain folder.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-45-1024x635.png)

![](https://truehost.com/support/wp-content/uploads/2024/10/image-47.png)

You may see the error below. Ignore it

It happens as we try to move a binary file which is not important in our case.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-50.png)

Step 7: Access your Site.

That is it. You can now access your site.

![](https://truehost.com/support/wp-content/uploads/2024/10/image-52-1024x452.png)

Possible Issues.

- Why is it not possible to manage the application startup file via the Plesk [.NET Toolkit](https://www.plesk.com/extensions/dot-net/) extension?
- Why is the **Application startup file** option in [.NET Toolkit](https://www.plesk.com/extensions/dot-net/) settings not clickable?

![](https://truehost.com/support/wp-content/uploads/2024/10/image-63-1024x552.png)

On a Windows server, the **Application startup file** option in [.NET Toolkit](https://www.plesk.com/extensions/dot-net/) settings may not be clickable, because Plesk does not generate a `web.config` for the .NET application and instead uses the already existing file that comes with a ready .NET application. 

In other words, it is expected that the `web.config` file that is necessary for the application to run will already be provided within the files that are provided by the application itself.

You should make sure that a `web.config` file exists in the application's Document root and Application root directory.

If still unsure how to generate web.config, go to your local development and run the command below

**`dotnet publish -c release`**

![](https://truehost.com/support/wp-content/uploads/2024/10/image-233-1024x469.png)

**The final build will be as below.**

![](https://truehost.com/support/wp-content/uploads/2024/10/image-234-1024x77.png)

Then Compress the files and upload to plesk.
