Deploying ASP
-
Upload
sanhith-chowdary -
Category
Documents
-
view
232 -
download
0
Transcript of Deploying ASP
-
7/29/2019 Deploying ASP
1/33
Deploying ASP.NET Applications
After creating and testing your ASP.NET application, the next step is to deploy the
application. Deployment is the process of distributing the finished application to beinstalled on other computer. We can use the built-in deployment feature that comes with
Visual studio .NET to create a Windows Installer file - a .msi file for the purpose ofdeploying applications.
Deploying Applications
To start, open the Web Application project you want to deploy. Say, you have a projectnamed "Deploy" with ten Web pages in it. Select File->Add Project->New Project from
the main menu. From the Project Types pane select Setup and Deployment Projects and
from the Templates pane select Web Setup Project. Type WebSetup1 for name andspecify a location in the location box and click OK. The New project dialogue box looks
like the image below.
When you click OK on the above dialogue box, the project is added to the solution
explorer window and also a File System Editor window appears as shown in the imagebelow.
-
7/29/2019 Deploying ASP
2/33
The File System Editor window has two panes. Select Web Application Folder in the leftpane in this window. From the Action menu (on main menu), select Project Output to
open the Add Project Output Group dialog box. It looks like the image below.
-
7/29/2019 Deploying ASP
3/33
Make sure that Deploy is selected in the Project drop-down list and select Primary
Output from the list and click OK. You also can select other options depending upon theusers of your application.
Now, in the File System Editor window, select Web Application Folder and open it's
Properties window. The Properties window for the Web Application Folder looks like theimage below.
-
7/29/2019 Deploying ASP
4/33
In this window, set the VirtualDirectory property to any name, say FinishedApp.FinshedApp will be the folder on the target machine where you will install this
application. The name you set for this VirtualDirectory property should not already exist
on the target machine. If it does, the contents in the folder will be overwritten. Also, setthe DefaultDocument property to any page in the application. The page you set in this
property will be the default page for the Web Application. Once you are finished with the
Properties window build the solution by selecting Build->Build WebSetup1 from themain menu. After the solution is built sucessfully, a WebSetup1.msi file is created in the
Debug directory of the Web Setup project. The default path to the debug directory is as
follows:
C:\Documents and Settings\Administrator\My Documents\Visual StudioProjects\deploy\WebSetup1\Debug.
Installing the Application
You can copy the WebSetup1.msi file to the target machine and double-click to install
the Web Application. When you double-click the setup file the dialog that opens looks
like the image below.
-
7/29/2019 Deploying ASP
5/33
-
7/29/2019 Deploying ASP
6/33
Click next and you will be taken to the next dialog which looks like the image below.
You can use the default Virtual Directory specified by the installer or you can specifyone. Click next to install the application.
Deploying ASP.NET Applications
Using the Copy Project Option
Another option to deploy your ASP.NET application developed using Visual Studio
.NET is to use the copy project option. This option is very helpful if you decide to hostyour ASP.NET application with a hosting provider. The hosting provider allocates some
space for you on his Web server and you are required to deploy your application/Website.
To host your ASP.NET application on a hosting provider's server you need to followthese steps.
The first thing you need to do before deploying any ASP.NET Web application is to
change the Active Solution Configuration from Debug to Release as shown below. This
allows the compiler to optimize the code, remove debugging related symbols from codeand makes the code run much faster. To open the Configuration Manager, right-click on
the Web project in the Solution Explorer window and select Project->Properties. The
properties dialog box looks like the image below.
-
7/29/2019 Deploying ASP
7/33
On this dialog, click on Configuration Properties towards the left and click the
"Configuration Manager" button towards the right side. The Configuration Manager
dialog looks like the image below.
-
7/29/2019 Deploying ASP
8/33
On this diaolg select Release from the drop-down list found at top-left.
To copy your Web project onto the target server, select Project->Copy Project from the
main menu. Selecting this option will display a dialog box as shown in the image below.
The Copy Project dialog provides the following options.
Destination Project Folder
Used to specify the location to which you want to copy the project. The location can beon the same machine or on a remote server.
Web access method
The Web access method option determines the access method that is used to copy the
Web project to the destination folder. There two types of Web access methods:
File share: Allows to directly access the project files on the Web server through a file
share.FrontPage: Specifies that you want to use the HTTP-based FrontPage Server Extensions
to transfer your project files to the server.
Copy
The Copy option provides three types which are as follows:
-
7/29/2019 Deploying ASP
9/33
Only files needed to run this application: Copies built output files (DLLs and references
from the bin folder) and any content files (.aspx, .asmx). It is recommended to deploy the
application using this default option.All project files: Copies built outputs (DLLs and references from the bin folder) and all
files that are in the project. This includes the project file and source files.
All Files in the source project folder: Copies all project files and any other files that are inthe project folder (or subfolder) being transferred to the destination folder.
To copy the Web Application, select your options based on the application type from the
above dialog box and click OK. This will result in the ASP.NET Web application being
deployed on the target server as shown in the image below.
Some hosting providers require you to enable FrontPage Extensions on your account
which can be done via the control panel.
onfiguring Websites in Windows .NET Server/IIS 6.0
At times there might be situations where you need to host your ASP.NET applications
from your corporate server or your own machine. A scenario where this might beneeded is when you have large amounts of data on your Web site and you are concerned
about the big bucks your hosting provider will charge you for disk space, bandwidth and
database maintenance. Internet Information Services 6 (IIS 6) can be used for hostingyour Web site. IIS 6 is a powerful platform for hosting Web sites. Creating and
configuring Web sites and Virtual Directories using IIS are as easy as 1-2-3. In this
section we will see how we can create a Website using IIS 6.0 and configure it.
Creating a Website
The first thing you need before creating a Web site using IIS 6.0 is a unique IP address
that identifies your computer on the network. This address takes the form of a string of
four numbers separated by periods (.). For your site to be up and running you also need a
connection to the Internet. You need to lease a line from an Internet Service Provider(ISP) or a telephone company. When you open IIS Manager in Administrative Tools and
select Web sites in the console tree, and right-click on default Web site and open it's
properties you will find that the IP address for the default Web site is All Unassigned.
-
7/29/2019 Deploying ASP
10/33
This means any IP address not specifically assigned to another Web site on the machine
opens the Default Web site instead. A typical use for the Default Web site is to display
general information like a corporate logo and contact information.
Let's assume that we will use the IP address 169.16.13.211 for creating
Startvbdotnet.com and C:\Startvbdotnet is the folder where the homepage for this site islocated. To create the Startvbdotnet Web site, right-click on the Web Sites node and
selectNew->Web Site to start the Web Site Creation Wizard as shown in the imagesbelow.
-
7/29/2019 Deploying ASP
11/33
Click Next on the Web site creation wizard dialog and type a description for the site asshown in the image below.
-
7/29/2019 Deploying ASP
12/33
After typing the description click next to open the dialog where you need to specify the
IP address and port number for your Web site. As mentioned above, type 169.16.13.211
in the IP address textbox and 80 in the TCP port textbox. The dialog looks like the imagebelow.
Click Next and specify C:\Startvbdotnet as the home directory for the site. Notice the
checkbox that says "Allow anonymous access to this Web site". By default, it is checked,which means the Web site which we are creating is accessible by general public on the
Internet. If you are creating an intranet site which will be used only by authenticatedusers then you need to uncheck this checkbox. The image below displays that.
-
7/29/2019 Deploying ASP
13/33
Click Next to get to the Web Site Access Permissions dialog. By default, the Read and
Run scripts checkboxes are checked which means that your Web site will run scripts suchas ASP and is only a read-only Web site where users can't make changes to it. If you
want users to download content from your Web site, modify it and upload the modified
content then you need to check the Write checkbox. The image below displays that.
-
7/29/2019 Deploying ASP
14/33
Click Next and then Finish to create the new Web site. The image below displays the new
Web site which we created in IIS.
Configuring Websites in Windows .NET Server/IIS 6.0
-
7/29/2019 Deploying ASP
15/33
Virtual Directories
A virtual directory is a friendly name, or alias, either for a physical directory on your
server hard drive that does not reside in the home directory, or for the home directory onanother computer. Because an alias is usually shorter in length than the path of the
physical directory, it is more convenient for users to type. The use of aliases is alsosecure because users do not know where your files are physically located on the server
and therefore cannot use that information to modify your files. Aliases also make it easierfor you to move directories in your site. Rather than changing the URL for the directory,
you change the mapping between the alias and the physical location of the directory.
You must create virtual directories if your Web site contains files that are located in adirectory other than the home directory, or on other computer's hard drive. To use a
directory on another computer, you must specify the directory's Universal Naming
Convention (UNC) name, and provide a user name and password for access rights.
Also, if you want to publish content from any directory not contained within your homedirectory, you must create a virtual directory.
Creating a Virtual Directory
Let's say Startvbdotnet keeps their contacts in a folder called C:\StartvbdotnetContacts on
their web server and would like users to be able to use the URL
http://169.16.13.211/contacts when they need to access contact information. To do thiswe need to create a virtual directory that associates the /contacts portion of the URL, the
alias for the virtual directory, with the physical directory C:\StartvbdotnetContacts where
these documents are actually located.
To create a new virtual directory, right-click on Startvbdotnet Web site and select New->Virtual Directory to start the Virtual Directory Creation Wizard. The images below
display that.
-
7/29/2019 Deploying ASP
16/33
-
7/29/2019 Deploying ASP
17/33
Click Next and type the alias for the virtual directory, say, contacts as shown in the image
below.
-
7/29/2019 Deploying ASP
18/33
Click Next and specify the physical folder on the local server to map to this alias. The
physical folder on the server is C:\StartvbdotnetContacts. The image below shows that.
Click Next and specify permissions for this Virtual Directory as shown in the image
below.
-
7/29/2019 Deploying ASP
19/33
Click Next and finish the virtual directory creation wizard. The images below displays
the result. You cansee the new virtual directory, contacts, with a gear symbol in the IIS wizard.
-
7/29/2019 Deploying ASP
20/33
When users type http://169.16.13.211/contacts in their browser they will be shown a pagewith contact information for Startvbdotnet Web site. What actually happens is the content
comes from a directory located outside the Web site directory but the address bar in the
browser shows that the directory is part of the Web site.
Configuring Websites in Windows .NET Server/IIS 6.0
Controlling Access to Web Site
Now that we created a Web site and a virtual directory we will look at some of the
administrative tasks that are required to control the Web site. The settings in
this article apply only to Startvbdotnet Web site which we created in IIS and not to allWeb sites under IIS. The procedure is same if you want to set the properties for all Web
sites. If you want to set the following properties for all Web sites under IIS then you needto right-click on Web Sites in IIS and select properties from the menu and follow the
steps which are mentioned in this article.
When you right-click on the Startvbdotnet Web site in IIS and select properties, the
properties window that is displayed looks like the image below.
-
7/29/2019 Deploying ASP
21/33
As you might notice from the above image the dialog box displays information as tabs,all of which are discussed below.
Web Site Information (Web Site Tab)
By defaut, the Web site tab is displayed when you right-click and select properties for
any of the Web sites in IIS. The information under Web site tab is discussed below.
Web site identification
The Web site identification part displays general information like the description of the
Website, IP address and the port number it is using.
Connections
Connection timeout
Connection timeouts are used to reduce the amount of memory resources that are
consumed by idle connections. Time-out settings also allow you to specify how long
-
7/29/2019 Deploying ASP
22/33
server resources are allocated to specific tasks or clients. The default connection timeout
setting set by IIS is 120 seconds which means that when a visitor accesses your site and
has no activity on your site for 2 mins his connection will be timed out.
Enable HTTP Keep-Alives
Most Web browsers request that the server keep the client connection open while the
server sends multiple elements like .htm files and .gif or .jpeg files to the client. Keeping
the client connection open in this way is referred to as an HTTP Keep-Alive. Keep-Aliveis an HTTP specification that improves server performance. HTTP Keep-Alives are
enabled by default in IIS.
Enable Logging
The logging feature allows you to collect information about user activity on your site.
Information such as who has visited your site, what the visitor viewed, and when the
information was last viewed, etc, can be collected with this feature. The default loggingformat is the W3C Extended Log File Format. You can also change the logging format
based on your preferences. To change the logging format you need to make aselection from the active log format drop-down list.
To set how often you want your new log file to be created click the properties button to
open the Logging Properties dialog as shown in the image below.
-
7/29/2019 Deploying ASP
23/33
The Logging Properties dialog shown in the image above allows you to record log
information on an hourly basis or daily or weekly or monthly basis or based on file size.
If you select the Weekly option then a log file is created once every week. You can alsochange the location of the log file on your server in the Logging Properties dialog.
Performance (Performance Tab)
The Performance tab let's you control the performance of your Web site, like, setting the
amount of bandwidth per second and allowing the number of simultaneous connectionsaccessing the Web site at a given time. The dialog looks like the image below.
Bandwidth throttling
If the network or Internet connection used by our Web server is also used by otherservices such as e-mail, then we might want to limit the bandwidth used by our Web
server so that it is available for those other services. If our Web server hosts more than
one Web site, you can individually throttle the bandwidth used by each site. By default,bandwidth throttling is disabled. If you want to enable it, check the checkbox and enter
the bandwidth you want in kbps.
-
7/29/2019 Deploying ASP
24/33
Web site connections
Connection limits restrict the number of simultaneous client connections to our Web site.
Limiting connections not only conserves memory but also protects against maliciousattacks designed to overload our Web server with thousands of client requests. By
default, unlimited connections are allowed. If you want to limit the number ofconnections then you need to select the "Connections limited to" radio button and enter
the number of connections you want to access your site at a given time.
Home Directory
The Home Directory tab in the properties dialog for the Web site is displayed below.
As you can see from the image above, the content for this Web site comes from the localpath on the server. If you want the content for this Web site to come from another
computer located on a network you need to select the radio button which says "A share
located on another computer" and enter the computer on the network.
Redirecting
-
7/29/2019 Deploying ASP
25/33
Sometimes when your site is experiencing technical difficulties or if you are doing
maintenance you need to redirect visitors to another site or to another page informing
what is going on. IIS lets you redirect a Web site to a different file or folder on the samemachine or to an URL on the Internet. To configure redirection you need to select the "A
redirection to a URL" radio button under the home directory and choose the redirection
option you want to use and specify the path as shown in the image below.
Configuring Websites in Windows .NET Server/IIS 6.0
Controlling Access to Web Site
Custom Errors
You can configure Internet Information Services (IIS) to send default HTTP 1.1 errormessages or custom error messages. Custom error messages can be mapped to a file
name or to a URL. The image below displays Custom Errors dialog.
-
7/29/2019 Deploying ASP
26/33
You can also configure your own custom error messages. To do that, click the HTTPerror that you want to change, and then click Edit to open the Edit Custom Error
Properties dialog as shown in the image below.
-
7/29/2019 Deploying ASP
27/33
To configure your own custom error, in the Message Type list box, click either File to
return a custom error file or URL to direct the request to a custom error URL on the local
machine.
Note that you cannot customize the following errors: 400, 403.9, 411, 414, 500, 500.11,
500.14, 500.15, 501, 503, and 505.
Documents (Documents Tab)
The Documents dialog is displayed in the image below.
Enable default content page
The enable default content page lets you designate the default page for your Web site.
You can specify names such as index.aspx, default.aspx, login.aspx, etc. To add a newtype you need to click the Add button and add the file which you want to be displayed to
your users when they first enter your site.
Enable document footer
-
7/29/2019 Deploying ASP
28/33
The enable document footer option lets you add a HTML formatted footer to each and
every document on your site. By default, it is disabled.
HTTP Headers (HTTP Headers Tab)
The HTTP Headers dialog looks like the image below.
Enable content expiration
By default, this is disabled. If you enable content expiration and set a date then thecontent on your site expires after the set date. If you notice from the above image, the
content for Startvbdotnet is set to expire on Tuesday, Februrary 23, 2010 at 12 AM.
Content rating
Content rating allows to classify your site from four predefined values which are
Violence, Sex, Nudity and Language. By default, content rating is disabled. To enablecontent rating, click the edit Ratings button to open the Content Ratings dialog as shown
in the image below.
-
7/29/2019 Deploying ASP
29/33
In the Content Ratings dialog, enable the checkbox which says Enable ratings for this
content and select a category under which your site falls and drag the track bar to indicatethe level of the rating. You can also include an email address for contact and set an
expiration date for this content as shown in the image above.
Directory Security (Directory Security Tab)
The Directory Security dialog looks like the image below.
-
7/29/2019 Deploying ASP
30/33
Authentication and access control
Authentication and access control allows us to setup access to our
site using Authentication Methods. If you click the Edit button the AuthenticationMethods dialog that is displayed looks like the image below.
-
7/29/2019 Deploying ASP
31/33
By default, the enable anonymous access checkbox is checked which means that your site
will be accessed by everyone using the IUSR_COMPUTERNAME (default IIS account).If you want to enforce restrictions and want users to be authenticated before they access
your site you need to set it in this dialog.
IP address and domain name restrictions
The IP address and domain name restrictions allows us to grant or deny access to usersbased on their IP address. If you click the Edit button the IP Address and Domain Name
Restrictions dialog that is displayed looks like the image below.
-
7/29/2019 Deploying ASP
32/33
By default, all computers will be granted access. If you want to deny/block a particular
user or a group of computers then you need to select the Denied access radio button andclick the Add button to open the Grant Access dialog as shown in the image below.
If you want to block a single computer enter the IP address of the machine and click OK.
If you want to deny a group of computers then select the Group of computers radio buttonand enter the network address and Subnet mask number to deny that group. If you want
to deny users based on a domain name the select the Domain name option and enter the
domain name.
Starting and Stopping Web site
You can start and stop a Web site in IIS manager. To start a Web site, select the Web site,right-click on it and from the menu select start/stop as shown below.
-
7/29/2019 Deploying ASP
33/33