RE: IIS 6 does not start

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance

From: [Tony Devere] (tdevere_at_online.microsoft.com)
Date: 11/21/04


Date: Sun, 21 Nov 2004 21:28:09 GMT

SYMPTOMS
========

When you launch IIS 6.0 on a .NET Server machine, IIS binds to all IP
addresses on the server, not just the IP addresses that are assigned to
Web sites. If you then attempt to launch an additional application that
makes use of port 80 it will fail.

If an application is already using port 80 on any IP address and you then
attempt to start a website on port 80 on a separate IP address you will
receive the following error message:

"The process cannot access the file because it is being used by another
process."

CAUSE
=====

When IIS 6.0 is started and a website is enabled on port 80, http.sys binds
to port 80 on all IP addresses of the machine - represented by 0.0.0.0:80.
Once this has happened no additional processes can bind to port 80 on any
IP address.

RESOLUTION
==========

The current workaround is to use httpcfg.exe to manually instruct IIS6 to
bind to only one particular IP instead of binding to 0.0.0.0:80. This can
be done with the httpcfg.exe utility which ships with the Windows.NET
Server Support Tools. The steps are as follows:

1. Install the Windows.NET Server Support Tools

2. Open a command prompt and navigate to the directory with httpcfg.exe
3. Configure http.sys to STOP listening to all IPs: httpcfg delete
iplisten -i 0.0.0.0

4. Configure http.sys to listen to ONLY the specified IP:
httpcfg set iplisten -i <ip address>

6. Stop the HTTP driver:
net stop http

7. Stop the other service/process attempting to bind to port 80
8. Restart HTTP and any web services: net start "World Wide Web Publishing
Service"

9. Restart the service/process that also wants to bind to port 80

Thank you,

Tony DeVere [MSFT]
Microsoft IIS
Newsgroup Support
tdevere@online.microsoft.com

"Please do not send email directly to this alias. This is our online
account name for newsgroup participation only."

This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use. © 2001 Microsoft Corporation. All rights
reserved.



Relevant Pages

  • Re: Question on IIS servers and reverse lookup ... found answer
    ... netbios over TCP/IP on the interface your web server uses to talk to the ... There's a huge list of steps to take to secure an IIS ... logs) in addition to the low-level packet capture. ... packet is being sent to that UDP:137 port. ...
    (Focus-Microsoft)
  • Re: HttpHandler not working
    ... !>have anything to do with the non default port that I am using?? ... The 404 Page not found error from IIS is typical error message for permission problems. ... But when I run it from our web app server (Windows Server 2003-R2, ... and automatically has read rights to the datafeed directory in your development box.. ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Can I run an Internet web server from a Win2K computer?
    ... You can deffinately run an internet website from IIS on Windows 2000 Pro., ... Be aware though, that there can be no more than 10 simultaneous connections, but for your homegrown website, I would think that this is not a problem. ... You will have to set up your broadband router to forward incoming HTTP connections on port 80 to the computer hosting the website ... I'm trying to use the web server that comes with Windows 2000 ...
    (microsoft.public.win2000.general)
  • Re: ISA2004 SP2: EventID 14148
    ... Please do not send email directly to this alias. ... is that it does work on Small Business Server ... IIS 6.0 and host headers. ... The Web Proxy filter failed to bind its socket to 218.188.188.188 port ...
    (microsoft.public.isa.configuration)
  • Re: Am I hacked? IIS dying, telnet localhost 443 gives: Hallo, Willkommen auf Compactzone Stro!
    ... miscreant has remote access to the box with admin rights. ... I have a server running IIS and I ... When I try to telnet the server using port 443 I get the same ...
    (microsoft.public.inetserver.iis.security)