Tuesday, September 3, 2013

Internet Information Services (IIS) Interview Questions & Answers


1. How we can create a Virtual Directory on IIS?
Open IIS Configuration Manager
First of all Right Click on Default web sites > New > Virtual Directory.
Browse the Physical Path. Set the properties. Click on OK

2. What is the folder location for Virtual Directory?
<Drive>:\inetpub\wwwroot

3. How can we get the list of worker process running in IIS along with the Application pool name?
By running iisapp.vbs script from command Prompt.
Below are the steps:
1. Start > Run > Cmd
2. Go to Windows > System32
3. Run cscript iisapp.vbs

4. How we can debug a web application which is hosted on IIS?
We can easily debug any web application that is hosted on IIS by using Attaching of Worker Process.
From Visual Studio IDE > Tools > Attach To Process
Select the particular Process, and then start debugging.
5. Does IIS allows multiple users to Remote debug simultaneously?
Yes. This is one of the great features of msvsmon.exe. Each instance of the remote debugger has a unique server name. We can give an instance of the remote debugger any server name. Now multiple users can able to access the server instance.

6. How we can create a web garden?
For creating web garden we need to go to Application Pool, then Right Click on Application Pool > Properties > Goto Performance Tab
In Web Garden Section, increase the number of worker process. By default it is 1.
What is the use of aspnet_regiis -i command?
His is used automatically register the .NET Framework with your IIS.

For more information:
http://msdn.microsoft.com/en-us/library/k6h9cz8h%28VS.80%29.aspx

8. How will you call a Website from another computer connected in LAN?
In order to call a website from another computer in LAN.We will have to Host the Website in one Machines in the LAN and provide it a Static Private IP.
Once we are done with, we can treat it as a dummy server.
Once the website is hosted then we can call the website from the Private static IP of the machine in which the web app is hosted.
Eg :- if the web app is named as abc and the private IP is 192.168.116.126
then from another machine we can call the app as
http://192.168.116.126/lms

9.Where is the default location for IIS Log files ?
C:\WINDOWS\system32\LogFiles\W3SVC1
10.How can we set the default page for any web application ?
We can set the default page for a web site from the Virtual Directory Setting.
How To :
IIS Manager > Virtual Directory > Right Click > Properties > GoTo Document Tab.

11.How we can set the Idle Time out of an worker process ?
We can set the Idle time out for an worker process from Application Pool Properties.
In Performance Tab of Application pool, we can set the Idle Time out of the worker process. This means worker process will shut down after that given time period if it stay idle. And will again wake up again if a new request comes.

12.What is ISAPI Filter ?
Please read this in details.
http://msdn.microsoft.com/en-us/library/ms524610.aspx

13.Can we have multiple web sites on IIS ?
Yes. IIS Can have multiple web sites and Each and every web sites can have multiple virtual Directory.

14. Where session data stores in case of “In-Proc” Session mode ?
Session data store inside process memory of worker process [ w3wp.exe ] .

15. What is the default authentication settings for IIS ?
Anonymous authentication is the default authentication mode for any site that is hosted on IIS, and it runs under the “IUSR_[ServerName]” account.

16. What are the different security settings available in IIS ?
Below are the commonly used IIS Security settings
·        Anonymous
·        Integrated Windows Authentication
·        Basic Authentication
·        Digest Authentication
·        Passport Authentication
·        For Set security permission you need to go to Virtual Directory > Right Click > Properties > Directory Security Click on Edit Button .

17. What is the Role of Http.Sys in IIS ?
HTTP.SYS is the kernel level components of IIS. All client request comes from client hit the HTTP.Sys of Kernel level. HTTP.SYS then makes a queue for each and every request for each and individual application pool based on the request.Whenever we create any application pool IIS automatically registers the pool with HTTP.SYS to identify the particular during request processing.

18. What are the main layers of IIS Architecture ?
IIS having mainly two layer Kernel Mode and User Mode
Below are the subsection of both of them.
·        Kernel Mode
·        HTTP.SYS
·        User Mode
·        Web Admin Service
·        Virtual Directory
·        Application Pool

19. What is Recycling of Application Pool ?
Recycling Application pool means recycle the Worker process (w3wp.exe ) and the memory used for the web application.
There are two types of recycling related with Application pool
Recycling Worker Process – Predefined Settings
Recycling Worker Process – Based on Memory

20. Name of default Identity of IIS6.0
Default Identity of IIS 6.0 is NetworkServices .
Which is having very minimum rights on your system. The user can only have the read access of the site.

21. What are the different types of Identity available in IIS 6.0 ?
·        IIS having three different Identity.
·        Local System
·        Local Services
·        NetworkServices

22. What is the Name of Default Application Pool in IIS ?
Though we can create new application pool IIS with different settings, but IIS having its own default application pool named : DefaultAppPool

23. What are the Different steps to be followed to get SSL(Secure Sockets Layer) for our Web Application ?
Intially we have to Generate a certificate request from our IIS
Now we have to request a certificate from the certificate authority(CA)
This CA is an entity which issues Digital Certificates.
After receiving the certificate we have to install that particular certificate on our Web Server using IIS
We have to use Secure Hyper Text Transfer Protocol(HTTPS) when accessing secure pages in our application.
By this way we could make our web page as SSL protected. !!!

24. How to recycle application pool from the command prompt in IIS7?
Use appcmd.exe to recycle the application pool from the command prompt.
appcmd.exe is the command line tool for IIS7, you will find this tool at following location :
%systemroot%system32inetsrvappcmd
To recycle your application pool use the following command:
appcmd recycle apppool /apppool.name:<application pool name>

25. List of Error & Status codes in IIS 6.0?
Status Code Type of Code
·        100 Series – Informational
·        200 Series – Success
·        300 Series – Redirection
·        400 Series – Client Error
·        500 Series – Server Error

26. What is IIS metabase? And In which format IIS stors configurations?
IIS metabase is a special databse which is used to maintain the settings and configurations data for IIS. In simple term, it is a configuration base for IIS (Metabase.xml).
IIS 5.0 –> Metabse is in Binary.
IIS 6.0 & 7.5 –> Metabase is in XML.

27. What is the default user name of an anonymous login in IIS?
In IIS, an anonymous user will be given with a user name of “IUSR_MachineName ”

28. How can we take back-ups in IIS Server?
Step 1 : In the IIS (inetmgr), right click on the “Computer” icon under “Internet Information Services” . Click “All Tasks” and select “Backup/Restore Configuration”.
Step 2 : Click on button “Create backup”. Give Name for your backup file. If you want encryption enable encryption option and give Username and Password and then click OK.

29. What is the latest version of IIS released with Windows 7?
IIS 7.5

30. From where you can change the ASP.NET Version in IIS ?
This can be change from Virtual Directory properties. First open Properties of Virtual Directory > GoTo ASP.NET Version Tab.
There we can have change the ASP.NET Version.

31. What are the different “Execution Permission” available for IIS for an virtual directory ?
There are three Execution Permission available.
·        None
·        Scripts Only
·        Scripts and Executable

32.From where we can set the Session Time Out in IIS ?
·        We can set the Session time out settings from the Virtual Directory for that site.
·        Right Click on Virtual Directory > Properties > Click on “Configuration” Button
·        Goto the “Option” Tab. There in Enable Session State Section you can configure the Session Timeout .

33. How does IIS process an ASP.net request ?
When client request for an aspx pages, request comes to kernel level off IIS means to HTTP.SYS . HTTP.SYS receives the request and based on the application pool name [ Which is already registered with the HTTP.SYS ] it send the request to worker process. Windows Activation process works as mediator of them. w3wp.exe loads “aspnet_isapi.dll” files to start the HTTPRuntime . HTTPRuntime creates HTTPApplication objects and all request are passed through HTTPModule and finally reached to HttpHandler . This is the request pipeline. After end of Request pipeline ASP.NET Page lifecycle starts.

34.What are the different way that we can hosted site on IIS ?
We can hosted site on IIS either creating Virtual Directory through IIS manager or Using Folder Web Sharing .
Apart from that Visual studio provide some inbuilt features to host the site on IIS like using Publishing the web site , Using Copy web Tool or Creating Virtual directory during the creating the project by choosing Location as HTTP

35. What are the main components of SVCHost.exe ?
·        Main components for SVCHost.exe are WWW Publishing Service (W3SVC) and Windows Activation Porcess (WAP) .
·        W3SVC is the mediator of HTTP.SYS and Windows Activation Process. Windows Activation Process maintain the worker processes.

36. Can we create one Application Pool from another Application Pool?
Yes. We can. While creating Application Pool from IIS, there should have two options available first one is for Default Setting and another is for Existing Setting as template. We can select the second one and from the drop down listed below we can select any on the Application Pool as Template,.

37. Is there any alternative way to host site on IIS rather than opening IIS Manager ?
Yes, We can directly host any site from the physical location of directory itself.
Right Click on Physical Folder > Properties > Web Sharing
There you need to select > “Share This Folder” Option Button. Then it will ask for alias name and other setting. Then Click on OK.
To Validate: Run > Inetmgr > Check there should an virtual directory with the same “Alias” name that you have given.
If there are already one Virtual directory exist it will showing you the error message while you providing the “Alias” name.

38. Why do we need to IIS Remote Debugging ?
There are following reasons where we can use remote debugging
·        Your development server does not have IIS installed.
·        Development server and Build/Released/Hosting Server is different
·        Multiple users want to debug simultaneously.

39. What is Application Pool in IIS?
Before Giving the Definition: you can say like this, Concept of Application pool has from IIS 6.0.
Application pools are used to separate sets of IIS worker processes that share the same configuration and application boundaries. Application pools used to isolate our web application for better security, reliability, and availability and performance and keep running without impacting each other . The worker process serves as the process boundary that separates each application pool so that when one worker process or application is having an issue or recycles, other applications or worker processes are not affected.
One Application Pool can have multiple worker process Also.
Main Point to Remember:
·        Isolation of Different Web Application
·        Individual worker process for different web application
·        More reliably web application
·        Better Performance

40. What is web garden ?
By default Each Application Pool runs with a Single Worker Process (W3Wp.exe). We can assign multiple Worker Process with a Single Application Pool. An Application Poll with multiple Worker process calledWebGardens. Each Worker Process Should have their own Thread and Own Memory space.
Generally it’s not recommended to use InProc Session mode while we are usingWebGarden.

41. What is the use of Enable Pinging Properties for Application Pool ?
IIS should periodically monitor the health of a worker process [ Idle or not , Time for recycle or not, All Worker process are running properly or not ] .
Pining means, Activation Process monitor Worker process performance, health, idle time etc.
By default it sets to 30s.

42. What is the Role of IIS ?
Visual studio having its own ASP.NET Engine which is capable enough to run Asp.net web application from visual studio. So we just click on Run button to start the application.
Now this is the scenarios of local environment. But If we want to host it on server from where all user can access the sites then IIS comes into the picture.
IIS provides a redesigned WWW architecture that can help you achieve better performance, reliability, scalability, and security for our Web sites. IIS can support following Protocol HTTP/HTTPS, FTP, FTPS, SMTP Etc. We need to host the site on IIS, when request comes from client it first hits the IIS Server, then the server passed it to ASP.NET worker process to execute. Then the response also passes to client via IIS itself.
Note only Hosting of Site we can create our FTP Server, SMTP Server using IIS itself.
There are different version of IIS available like 5.1, 6.0, 7.0 etc.

43. What is the Role of Windows Activation Process in IIS ?

WAP is the Controller of Worker process under a Application Pool. Windows Activation Process which is managed by the worker process by starting, stopping and recycling the application pool. When to start, stop and Recycle should be defined on Application Pool Settings. Activation Process is also responsible for Health Monitor of Application Pool during runtime.

No comments:

Post a Comment