Microsoft doesn't officially support running IIS (Internet Information Server) or PWS (Personal Web Server) on Windows XP Home.
See: INFO: Personal Web server is not included with Windows XP Home Edition.
There is no technical reason why XP Home didn't include a web server, so I can only assume it was done as a marketing decision.
These instructions are unofficial and unsupported. Hacking your Windows XP Home installation is a good way to put your computer out of commission and require a full reinstall.
If you are actually using your computer to run a business and need IIS, you must license an appropriate version of Windows to be in compliance with Microsoft EULAs. These versions include:
Windows XP Professional
Windows Web Server 2008
Windows Server 2008
Windows Server 2003
If you want to run a web server, but do not need IIS specific features (ASP/ASP.NET support), consider an alternative web server.
References and credits
Richard Sandoz provided the steps to install IIS on XP Home in this USENET post (Jan 8 2002). His original posting has been widely quoted around the web. Unfortunately, his steps are unclear on how to properly configure IIS after installation.
This article cleans up some style issues with Mr. Sandoz's post, and integrates additional steps needed to work on XP Home SP2. This article would not have been possible without Mr. Sandoz's work, and I thank him for sharing it with the community.
Path and CD-ROM notes
I assume that your windows folder is C:\Windows which is the default location. Substitute your actual windows folder if needed.
I assume that your CD-ROM drive is assigned the letter X:. Substitute your actual CD-ROM drive letter if needed.
Windows Script Installation
You need to be running Windows Script 5.6 or higher for these instructions to work. Newer versions of Windows XP will come with this version installed, but if you have a very old installation you may need to update this component manually.
To verify your version of Windows Script, open a command prompt and run:
cscript
You should see "Microsoft (R) Windows Script Host Version 5.6" or "...5.7". If you have a prior version, use the following link to update your scripting components.
Micrsoft Download: Windows Script 5.7 for Windows XP
IIS Installation
Open the file C:\WINDOWS\INF\SYSOC.INF and find the section [Components].
Find the line:
iis=iis.dll,OcEntry,iis.inf,hide,7
and replace it with:
iis=iis2.dll,OcEntry,iis2.inf,,7
Typographical notes
This file is case-sensitive, so make sure you type OcEntry and not OCEntry or ocentry.
In the replacement text, there are two commas in a row before the 7.
From your Windows 2000 CD, copy the files X:\I386\iis.dl_ and X:\I386\iis.in_ to a folder on your hard drive.
Go to the folder from step #3 in a command window.
"Open Command Window Here"
Microsoft provides a PowerToy that lets you easily get to any folder in a command window. After installing the PowerToy, right-click on any folder to open it in the shell.
See: Microsoft PowerToys for Windows XP, and install "Open Command Window Here".
IIS Configuration
When cross-installing IIS from Windows 2000 to Windows XP Home, the default Directory Security and Home Directory settings will not work correctly out-of-the-box.
Configure Directory Security
The default IIS account is IUSR_NAME. We need to replace this with NAME\IUSR_NAME (where NAME is your computer name.)
IIS User Accounts
IIS creates some user accounts, based on your computer's name, that it uses to run ASP applications: IUSR_NAME and IWAM_NAME, where NAME is the name of your computer.
This allows custom security settings to be applied to ASP and ISAPI applications.
Start Internet Services Manager from Administrative Tools.
Your computer will appear under Internet Information Services. Right-click on your computer and choose Properties.
Select Master WWW Service in the drop-down, then click Edit....
Select the Directory Security tab.
Under Anonymous access and authentication control click Edit...
In the Authentication Methods form, make sure only Anonymous access is checked, then click Edit....
The default username will be IUSR_NAME. We need to replace this with NAME\IUSR_NAME where NAME is your computer name. You can type it in manually or use these steps:
Click the Browse... button.
On the Select User form click the Advanced... button in the bottom left.
Click the Find Now button in the middle-right of this form.
Select IUSR_NAME in the user list at the bottom of the form, then click OK
Click OK to dismiss the Select User form.
Uncheck Allow IIS to control password. (This is important!)
Click OK to dismiss the Anonymous User Account form.
Click OK to dismiss the Authentication Methods form.
Click OK to dismiss the WWW Service Master Properties form.
Click OK to dismiss the Computername Properties form.
If you see "The requested resource is in use." trying to access your new web server, follow the Home Directory steps below to modify the Application Protection settings for the default web site.
Apache has a native Windows version.
Lighttpd has a Windows version that runs with cygwin or mingw.
Note that neither of these support ASP applications natively, which is presumably why you are installing IIS in the first place.
I think Windows 2003 Server is the best, for all, media server, web, email, dns.
ReplyDeleteThanks for the tutorial