Thursday, May 15, 2008

HTTP Request Types
Request Methods
HTTP defines eight methods (sometimes referred to as "verbs") indicating the desired action to be performed on the identified resource.
HEAD
Asks for the response identical to the one that would correspond to a GET request, but without the response body. This is useful for retrieving meta-information written in response headers, without having to transport the entire content.
GET
Requests a representation of the specified resource. By far the most common method used on the Web today. Should not be used for operations that cause side-effects (using it for actions in web applications is a common misuse). See 'safe methods' below.
POST
Submits data to be processed (e.g. from an HTML form) to the identified resource. The data is included in the body of the request. This may result in the creation of a new resource or the updates of existing resources or both.
PUT
Uploads a representation of the specified resource.
DELETE
Deletes the specified resource.
TRACE
Echoes back the received request, so that a client can see what intermediate servers are adding or changing in the request.
OPTIONS
Returns the HTTP methods that the server supports. This can be used to check the functionality of a web server.
CONNECT
Converts the request connection to a transparent TCP/IP tunnel, usually to facilitate SSL-encrypted communication (HTTPS) through an unencrypted HTTP proxy.[1]

PWS
Personal Web Server 4.0 is a free ASP capable webserver for your Win95/98 or NT Workstation PC. Its a reduced version of Microsofts fullblown webserver IIS 4.0 (Internet Information Server) that is used on machines running Win NT Server. PWS is available as a free download from Microsoft, as a part of the NT Option Pack.
PWS is a version of IIS intended for personal web publishing (developing your own web site locally as well as testing your applications) while IIS is an industrial strength web server. PWS comes in two versions PWS for windows 95 (which is unusable for the purpose of developing web application, lacking the security mechanism of NT) and PWS for NT workstation (the version I suggest you use). There are differences between PWS for NT Workstation and PWS for Win95/98. Microsoft describes PWS for NT Workstation like this: "Full-featured site development or personal publishing on a corporate intranet" and PWS for Win95/98 like " Personal publishing on a low-volume corporate intranet". One example is that you dont have an FTP service in the Win95/98 version of PWS.
PWS uses a smaller cache and, generally speaking, is less intrusive than full-blown IIS. It means that it will use less memory but will be slower than the real thing. IIS also has some capacities PWS does not like IP banning, NNTP service and unlimited number of concurrent connections (PWS is limited to 10).
IIS
Internet Information Services (IIS, formerly called Internet Information Server) is a set of Internet-based services for servers using Microsoft Windows. It is a World Wide Web server, a Gopher server and an FTP server all rolled into one. IIS means that you can publish WWW pages and extend into the realm of ASP (Active Server Pages) whereby JAVA or VBscript (server side scripts) can generate the pages on the fly. IIS has fun things like application development environment (FrontPage), integrated full-text searching (Index Server), multimedia streaming (NetShow), and site management extensions. It is the world's second most popular web server in terms of overall websites, behind Apache HTTP Server. As of March 2008 it served 35% of all websites according to Netcraft.
Version 7.0
Debuting with Windows Vista, and also included in Windows Server 2008, IIS 7.0 features a modular architecture. Instead of a monolithic server which features all services, IIS 7 has a core web server engine. Modules offering specific functionality can be added to the engine to enable its features. The advantage of having this architecture is that only the features required can be enabled and that the functionalities can be extended by using custom modules.
IIS 7 will ship with a handful of modules, but Microsoft will make other modules available online.[8] The following sets of modules are slated to ship with the server:
HTTP Modules
Security Modules
Content Modules
Compression Modules
Caching Modules
Logging and Diagnostics Modules

Introduction to Microsoft IIS 6.0
IIS 6.0 includes new features designed to help businesses, IT professionals, and Web administrators achieve their goals of performance, reliability, scalability, and security for potentially thousands of Web sites either on a single IIS server or on multiple servers. This section describes new and notable features in IIS 6.0.
Reliability Features: IIS 6.0 is more reliable than previous versions due to a new request processing architecture that provides an application isolation environment which enables individual Web applications to function within their own, self-contained worker process.

Security Features: IIS 6.0 includes a variety of security features and technologies to ensure the integrity of your Web and FTP site content, as well as data transmitted through your sites. IIS security features cover the following security-related tasks: authentication, access control, encryption, certificates, and auditing.

Performance Features: A new generation of applications puts a greater demand on performance and scalability attributes of Web servers. Increasing the speed at which HTTP requests can be processed and allowing more applications and sites to run on one server translates directly into fewer servers needed to host a site. The following are a few of the performance improvements included in IIS 6.0.
- HTTP.sys - HTTP.sys is a single point of contact for all incoming (server-side) HTTP requests that provides high performance connectivity for HTTP server applications. HTTP.sys is also responsible for overall connection management, bandwidth throttling, and text-based logging. HTTP.sys implements a flexible Universal Resource Identifier (URI) response cache, called flexible caching.

- ASP Disk Caching -Active Server Pages (ASP) processes templates that contain ASP scripts, stores the processed templates in a cache, and serves the cached templates to clients. By default, 250 templates are cached in-memory.

- Asynchronous CGI- IIS handles the Common Gateway Interface (CGI) implementation asynchronously, thereby removing the potential for blocked CGI processing responses.

Web Application Technologies: The Windows Server 2003 family offers an improved developer experience with ASP.NET and IIS integration. Microsoft® ASP.NET recognizes most ASP code while providing greater functionality for building enterprise-class Web applications that can work as a part of the Microsoft .NET Framework. Using ASP.NET allows you to take full advantage of the features of the common language runtime, such as type safety, inheritance, language interoperability, and versioning. IIS 6.0 also offers support for the latest Web standards, including XML, Simple Object Access Protocol (SOAP) and Internet Protocol Version 6 (IPv6.0).

Administrative Tools and Features: To meet the needs of a diverse set of customers, IIS provides a variety of manageability and administrative tools. Administrators can configure a server running IIS 6.0 with IIS Manager, administration scripts, or by directly editing the IIS plaintext configuration file. Administrators can also remotely administer IIS servers and sites.

Internet Standards: IIS 6.0 offers support for the latest Web standards, including HTTP 1.1, TCP/IP, FTP, SMTP, NNTP, and PICS ratings

Internet Protocol Version 6 Features: This version of IIS provides Internet services to clients connecting over the next generation of Internet Protocol (IP) known as IP version 6, or IPv6. IPv6 is included with the Microsoft Windows XP networking platform and the Microsoft Windows Server 2003 family.
The Internet Server API (ISAPI) framework provides the appropriate local- and remote-host server variables for IPv6 network addresses: LOCAL_ADDR and REMOTE_ADDR. When clients connect over IPv6, these variables store the IPv6 address.
When writing applications that use the ISAPI server variables for network addressing over IPv6, remember that all buffers allocated for network address storage can be a maximum of 128 bits in size (56 character string), whereas buffers allocated for network address storage over IPv4 are limited to 32 bits (16 character string).
After the protocol stack is installed, IIS automatically begins supporting IPv6 on your Web server.
Web sites that are already running must be restarted before they begin listening for IPv6 requests. Sites created after IPv6 support is enabled automatically listen for IPv6.


VIRTUAL DIRECTORIES
Creating Virtual Directories in IIS 6.0 (IIS 6.0)
In most cases, the content you publish to your Web or FTP site is located in a root or home directory on your computer, such as C:\Inetpub\Wwwroot\. However, there might be instances when the content is located somewhere else, or even on a remote computer.
To publish from any directory not contained within your home or root directory, you can create a virtual directory. A virtual directory is a directory that is not contained in the home directory but appears to client browsers as though it were.
You can create a virtual directory through IIS Manager or by using Windows Explorer. Additionally, you can create a Web virtual directory by using the Iisvdir.vbs script, and a FTP virtual directory by using the Iisftpdr.vbs script.
Procedures
To create a virtual directory by using IIS Manager
1.
In IIS Manager, expand the local computer, expand the Web Sites or FTP Sites folder, right-click the site or folder within which you want to create the virtual directory, point to New, and then click Virtual Directory. The Virtual Directory Creation Wizard appears.
2.
Click Next.
3.
In the Alias box, type a name for the virtual directory. (Choose a short name that is easy to type because the user types this name.)
4.
Click Next.
5.
In the Path box, type or browse to the physical directory in which the virtual directory resides, and then click Next.
6.
Under Allow the following permissions, select the check boxes for the access permissions you want to assign to your users, and then click Next.
Important
For security reasons, when selecting access permissions, consider allowing only the default Read permission. By restricting permissions in this way, you can help avoid attacks against your Web site by malicious users. For more information about setting access permissions, see Securing Virtual Directories and Access Control in Help and Support Center for Windows Server 2003.
7.
Click Finish. The virtual directory is created below the currently selected folder level.
To create a virtual directory by using Windows Explorer
1.
Open Windows Explorer.
2.
Right-click the folder you want to be a virtual directory, and click Sharing and Security.
3.
Click the Web Sharing tab.
4.
Click Share this folder.
5.
In the Alias box, type the name for the virtual directory.
6.
Click OK twice.
To create a Web virtual directory by using the Iisvdir.vbs script
1.
From the Start menu, click Run.
2.
In the Open box, type cmd, and then click OK.
3.
At the command prompt, type the following:
cscript %SystemRoot%\system32\iisvdir.vbs /create SampleWebSite[/Path] VirtualDirectorydrive:\path
where SampleWebSite, VirtualDirectory, and path is the physical directory, as appropriate.
For more information about creating Web virtual directories by using the Iisvdir.vbs command and its parameters, type the following at the command prompt: iisvdir /create /?.
To create an FTP virtual directory by using the Iisftpdr.vbs script
1.
From the Start menu, click Run.
2.
In the Open box, type cmd, and then click OK.
3.
At the command prompt, type the following:
cscript %SystemRoot%\system32\iisftpdr.vbs /create FTPSite[/Path] VirtualDirectory drive:\path
where FTPSite, VirtualDirectory, and path is the physical directory, as appropriate.
For more information about creating FTP virtual directories by using the Iisftpdr.vbs command and its parameters, type the following at the command prompt: iisftpdr /create /?.

Q. Short Notes on DHTML.
· DHTML is the short form for Dynamic Hyper Text Markup Language.
· DHTML is a collection of technologies which are used to create interactive and animated websites.
It uses a combination of:
· a static markup language (such as HTML),
· a client side scripting language (such as JavaScript)
· a presentation definition language (such as CSS),
· And the DOM (Document Object Model).
A DHTML webpage is any webpage in which client-side scripting changes the variables of the presentation definition language, which in turn affects the look and function of otherwise "static" HTML page content, after the page has been fully loaded and during the viewing process.
Thus the dynamic characteristic of DHTML is the way it functions while a page is viewed, not in its ability to generate a unique page with each page load.
By contrast, a dynamic web page is a broader concept — any web page generated differently for each user, load occurrence, or specific variable values. This includes pages created by client side scripting, and ones created by server-side scripting (such as PHP or Perl) where the web server generates content before sending it to the client.

Q. Short Note on Active X Data Objects.
· ActiveX Data Objects are a language-neutral object model
· They expose data raised by an underlying OLE DB Provider.
· The most commonly used OLE DB Provider is the OLE DB Provider for ODBC Drivers, which exposes ODBC Data sources to ADO.
· ADO is part of the Microsoft Data Access Components (MDAC).

Q. What is Remote Data Service (RDS) for ActiveX Data Objects (ADO)?
· Remote Data Service (RDS) is used to transport Active Data Object Recordsets from a server to a client computer. The resulting recordset is cached on the client computer and disconnected from the server. RDS uses a subset of the ADO Object model, the ADOR.Recordset, to provide a low-overhead, high-performance way to marshal recordset data over a network or web.

Q. What is the difference between the ADODB and ADOR objects? A. The ADODB Library contains additional server side objects (Connection, Command, Error, Parameters, and so forth). These are best used within server side components to communicate with the database. The ADOR Library is a lighter weight client that allows the manipulation of an existing recordset on the client. It does not include the Connection, Command, Error, or Parameters commands. The ADOR functionality is distributed with the ADO client components.

Q What's the difference between client- and server-side script?A Client-side script is included within the HTML page and executes on the client machine in response to events and user interaction. An example includes validating data entered into a field before the page is sent to the server. Server-side script is script that resides on the server machine and is processed on the server before a page is sent back to the client machine. Server-side script enables you to provide application processing that can call other application programs, such as an Active Server Component

Q. Explain the features of MS Visual Interdev.
A. Microsoft Visual InterDev, part of Microsoft Visual Studio 97 and 6.0, is a tool with a comprehensive, integrated development environment which enables developers to utilize many technologies to create and deploy dynamic, Web-based applications.
Need for such a tool:
Microsoft wanted to emphasize on a visual tool. Many products have been created that enable you to code HTML or connect to a database; however, these tools typically haven't focused on the ease of use for the developer. Powerful database integration and connectivity were clearly of paramount importance for its design. Visual InterDev even supports developers in deploying their sites once they have been built by integrating comprehensive tools to create and maintain a web site into Visual InterDev.
Integrated Development Environment
Visual InterDev provides a robust, integrated development environment to address the many capabilities of the Web. You can integrate various technologies, like ActiveX controls and Active Server Components, to create a powerful application. The integrated development environment enables you to use scripting languages like VBScript and JavaScript to create dynamic applications and Web pages. You can work on simultaneous projects of different types all from within Visual InterDev's Developer Studio interface. In addition to Visual InterDev projects, you also can develop Visual C++ and Visual J++ projects.
Visual InterDev Features
HTML editing is significantly enhanced through the use of the HTML Layout Editor and a version of the FrontPage HTML editor. The HTML Layout Editor, introduced with the ActiveX Control Pad, enables you to precisely place your ActiveX controls onto your web page. It also enables you to control the x and y coordinates to ensure that the ActiveX controls are displayed in the proper manner. By using this tool, you're able to take more control of your user interface, and can ensure that the interface you build is an effective one.
Visual InterDev also provides WYSIWYG editing through its own FrontPage 97 HTML editor. FrontPage enables you to visually author your HTML page. Content authors can use FrontPage 97 to create files that are completely compatible with Visual InterDev's version of the FrontPage Editor. Visual InterDev also provides site management tools that are very similar to those tools provided in FrontPage 97.
The Script Wizard is another visual tool that greatly enhances a developer's productivity. The Script Wizard enables you to associate specific actions with associated ActiveX control events. By linking these events and actions, the Script Wizard generates all of the necessary script language for you. Once the language is generated, you have the ability to modify and add to the code. This process can save you considerable development time by generating the routine script and enabling you to focus on the more advanced code for your application.
Visual InterDev also includes two tools for spicing up your web pages. These tools focus on multimedia creation and management. The Microsoft Image Composer and Microsoft Music Producer enable you to create graphical images, music, and sounds for your web site. You can use the Microsoft Image Composer to create engaging images for your web pages. The Image Composer supports the Adobe Photoshop file format as well as GIF and JPG formats. The Image Composer is simple to use, and you don't have to be a graphic artist to master it. The Music Producer enables you to create music and sound effects for your web site. You pick from over 100 pre-defined styles of music and can modify the arrangement of instruments as well as the tempo.
The Media Manager enables you to manage all of your multimedia files through the use of specialized folders. By using Media Manager, you can properly organize your images, sounds, video clips, and other multimedia files.
Visual InterDev enables you to create dynamic web pages through the use of Active Server Pages. Active Server Pages are HTML pages that contain server-side script. The script code can be either VBScript, JavaScript, or some other scripting language. The Active Server Page, or .asp file, resides on the server machine and executes before being downloaded to the browser.
Visual InterDev provides some very robust database tools. The Visual Data Tools included with Visual InterDev are easy to use and significantly reduce the time and effort for adding database capability into your application. Some of the features include the following:
Data View. Visual InterDev project window that enables you to view all of your database objects including tables, views, stored procedures, and triggers.
Query Designer A tool that enables you to visually build your SQL database queries and test the results.
Database Designer A tool that enables you to design, create, and maintain your SQL database.
Stored Procedure/Trigger Editor A tool for editing stored procedures and triggers for Microsoft SQL Server 6.x and Oracle 7.x.
The Query Designer and the Database Designer employ a user interface similar to Microsoft Access that's very easy to use. You can drag and drop objects into the workspace and automatically build your SQL queries. You also can use the Database Designer to populate the database and modify existing data.
Other database features include the following:
ActiveX Data Objects. An object-based approach to accessing a database over the Web that uses ActiveX Scripting.
Database Design Time Controls. Controls geared toward the automatic creation of database connectivity and generation of Active Server scripting.
Database Wizards. Wizards that guide you through the creation of an HTML, data-bound form