For users to access a website, it is required that the website is hosted on some sort of web server. There are different web servers available for different technologies. In .Net, the web server available is called Internet Information Services or IIS.

Once the web application is developed, it is then deployed on an IIS Server. This web application can then be accessed by the end users. There are two ways to deploy an application to the server, you will see both over here.

  • Using the File Copy method.
  • Using the Web publish method.

In this tutorial, you will learn-

What is IIS and Install IIS

IIS or Internet Information Server is the server used to host .Net web applications. IIS is normally installed on a Window Server.

The below diagram shows the process flow for an IIS Server.

Deploying a website on IIS

  1. The first part is the request sent by the user. The request will normally be a web page. An example could be http://example.com/Default.aspx .
  • Here 'example.com' is a web site hosted on the IIS Server.
  • 'Default.aspx' is a web page on the example.com web site.
  • So the user will enter the URL http://example.com/Default.aspx in the web browser. The request will then go to the IIS Server, which has the example.com application.
  1. Once the request comes to the IIS server, it is processed. The IIS Server will perform all the required operations as per request.
  2. Finally, the IIS Server sends the output back to the user. The output will generally be HTML content sent back to the user. This HTML content will be displayed in the web browser.

Let's look how we can install IIS on a Window Server.

Deploying a website on IIS

  • Once installed, the following steps need to be carried out for installing IIS.

Step 1) On Windows Server 2012, the default dashboard is shown as below.

  • The first step is to click on the 'Add roles and features' on the dashboard.
  • This allows one to install additional features on a server.

Deploying a website on IIS

Step 2) In the next screen, you need to click the Next button to proceed.

Deploying a website on IIS

Step 3) In the next step, we need to perform two sub steps

  1. The first is to choose the Role based or feature installation. This will allow us to perform the IIS Installation.
  2. Click the 'Next' button to proceed.

Deploying a website on IIS

Step 4) In the next screen, you will see the name of the server on which the installation is taking place. Click the Next button to proceed.

Deploying a website on IIS

Step 5) In the next step, we need to perform two sub steps

  1. Choose the Web server option. This will ensure that IIS gets installed.
  2. Click the 'Next' button to proceed.

Deploying a website on IIS

Step 6) In the subsequent screen, click the next button to proceed.

Deploying a website on IIS

Step 7) In the final screen, click the Install button to begin the installation.

Deploying a website on IIS

Once IIS has been installed, you can launch it, by going to search in Windows 2012.

  1. Enter the string 'inetmgr' which is the command for IIS.
  2. Then Internet Information Services Manager will come up. Click on this.

Deploying a website on IIS

After you click on the above link, IIS will open, and you will be presented with the below screen.

Deploying a website on IIS

In IIS, you will have an initial site setup called Default Web Site.

If you open up your browser and go to the URL http://localhost. You will see the below output. This URL mainly goes to the Default Web site shown in the previous screen. This is the default page which indicates that the IIS Server is up and running.

Deploying a website on IIS

Deploying to IIS via File copy

After developing a web application, the next important step is to deploy the web application. The web application needs to be deployed so that it can be accessed by other users. The deployment is done to an IIS Web server.

There are various ways to deploy a web application. Let's look at the first method which is the File copy.

We use the web application created in the earlier sections. Let's follow the below-mentioned steps to achieve this.

Step 1) Let's first ensure we have our web application 'DemoApplication' open in Visual Studio.

Deploying a website on IIS

Step 2) Open the 'Demo.aspx' file and enter the string "Guru 99 ASP.Net."

Deploying a website on IIS

Now just run the application in Visual Studio to make sure it works.

Output:-

Deploying a website on IIS

The text 'Guru 99 ASP.Net' is displayed. You should get the above output in the browser.

Step 3) Now it's time to publish the solution.

  1. Right click the 'DemoApplication' in the Solution Explorer
  2. Choose the 'Publish' Option from the context menu.

Deploying a website on IIS

It will open another screen (see step below).

Step 4) In the next step, choose the 'New Profile' to create a new Publish profile. The publish profile will have the settings for publishing the web application via File copy.

Deploying a website on IIS

Step 5) In the next screen we have to provide the details of the profile.

  1. Give a name for the profile such as FileCopy
  2. Click the OK button to create the profile

Deploying a website on IIS

Step 6) In this step, we specifically mention that we are going to Publish website via File copy.

  1. Choose the Publish method as File System.
  2. Enter the target location as C:\inetpub\wwwroot – This is the standard file location for the Default Web site in IIS.
  3. Click 'Next' button to proceed.

Deploying a website on IIS

Step 7) In the next screen, click the Next button to proceed.

Deploying a website on IIS

Step 8) Click the 'Publish' button in the final screen

Deploying a website on IIS

When all of the above steps are executed, you will get the following output in Visual Studio

Output:-

Deploying a website on IIS

From the output, you will see that the Publish succeeded.

Now just open the browser and go to the URL – http://localhost/Demo.aspx

Deploying a website on IIS

You can see from the output that now when you browse to http://localhost/Demo.aspx , the page appears. It also displays the text 'Guru 99 ASP.Net'.

Publishing the website

Another method to deploy the web application is via publishing a website. The key difference in this method is that

  • You have more control over the deployment.
  • You can specify to which Web site you want to deploy your application to.
  • For example, suppose if you had two websites WebSiteA and WebSiteB. If you use the Web publish method, you can publish your application to any website. Also, you don't need to know the physical path of the Web site.
  • In the FileCopy method, you have to know the physical path of the website.

Let's use the same Demo Application and see how we can publish using the "website publish method."

Step 1) In this step,

  1. Right click the 'DemoApplication' in the Solution Explorer
  2. Choose the Publish Option from the context menu.

Deploying a website on IIS

Step 2) In the next screen, select the 'New Profile' option to create a new Publish profile. The publish profile will have the settings for publishing the web application via Web Deploy.

Deploying a website on IIS

Step 3) In the next screen we have to provide the details of the profile.

  1. Give a name for the profile such as 'WebPublish'
  2. Click the 'OK' button to create the profile

Deploying a website on IIS

Step 4) In the next screen, you need to give all the details for the publish process

  1. Choose the Publish method as Web Deploy
  2. Select the server as Localhost
  3. Enter the site name as Default Website – Remember that this is the name of the website in IIS
  4. Enter the destination URL as http://localhost
  5. Finally, click the Next button to proceed

Deploying a website on IIS

Step 5) Click the 'Next' button in the following screen to continue

Deploying a website on IIS

Step 6) Finally, click the Publish button to publish the Web site

Deploying a website on IIS

When all of the above steps are executed, you will get the following output in Visual Studio.

Output:-

Deploying a website on IIS

From the output, you will see that the Publish succeeded.

Now just open the browser and go to the URL – http://localhost/Demo.aspx

Deploying a website on IIS

You can see from the output that now when you browse to http://localhost/Demo.aspx , the page appears. It also displays the text Guru 99 ASP.Net.

Summary

  • After an ASP.Net application is developed, the next step is that it needs to be deployed.
  • In .Net, IIS is the default web server for ASP.Net applications.
  • ASP.Net web applications can be deployed using File copy method.
  • ASP.Net web applications can also be deployed using Web Publish method.

 

YOU MIGHT LIKE: