?
Solved

Web Service Request Using localhost in the URL gives 404 error

Posted on 2006-11-03
5
Medium Priority
?
641 Views
Last Modified: 2007-12-19
System:
     IIS 5.0 Windows 2000 Advanced Server.
     ASP.NET 1.1
     Multiple Layers of web services, all running on the same server.

I recently was making a minor change to a web service that had not been changed for about a year. I could not get the changes to work. I tried restoring the old source files and I still could not get it to work.

I eventually figured out that the URL I had been using for the last 3 years was causing the problem. Web service WSA called web service WSB using a dynamic URL: "http://localhost/WSB/WSB.asmx".

When I changed "localhost" to the name of the machine that both web services are on, it worked. When I changed "localhost" to "appserver", which is the string just below "localhost" in my System32\Drivers\Etc\hosts file, and which also resolves to 127.0.0.1, it also works.

When I use "localhost", I get a 404 error, and the error I get indicates that instead of looking in the directory which is defined for the application: C:\WebStuff\WSB, IIS is looking in C:\inetpub\wwwroot\WSB.

What is going on here? I am assuming that the application WSA, or at least the Web Service Proxy, had not been recompiled for over a year, and by refreshing the web service reference, I cause that recompile. But, the URL is not compiled in, it is specified at runtime.

Thanks,
David
0
Comment
Question by:anyoneis
  • 3
  • 2
5 Comments
 
LVL 16

Expert Comment

by:manav_mathur
ID: 17869499
Have yo uenabled virtual servers in IIS??
0
 
LVL 11

Author Comment

by:anyoneis
ID: 17871322
No. These web services are located on the default web site.
0
 
LVL 16

Accepted Solution

by:
manav_mathur earned 2000 total points
ID: 17871341
0
 
LVL 11

Author Comment

by:anyoneis
ID: 17875528
Hmm. Well, now that you mention it... there is another web site defined called localhost. Perhaps what happened was that someone enabled it and caused my problem. If I understand virtual servers correctly, this site would get all messages referencing localhost, using the host header mechanism. But, how could it just pop up as a problem.

i am running off to ASPNET Connections for a week, so I'll look back into this in a week. Thanks for your ideas!

David

0
 
LVL 11

Author Comment

by:anyoneis
ID: 18034296
I haven't had time to test this, but I am fairly confident that manav_mathur's hypothesis is correct. So, let's close this!

Thank you!
David
0

Featured Post

Veeam Disaster Recovery in Microsoft Azure

Veeam PN for Microsoft Azure is a FREE solution designed to simplify and automate the setup of a DR site in Microsoft Azure using lightweight software-defined networking. It reduces the complexity of VPN deployments and is designed for businesses of ALL sizes.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Logparser is the smartest tool I have ever used in parsing IIS log files and there are many interesting things I wanted to share with everyone one of the  real-world  scenario from my current project. Let's get started with  scenario - How do w…
What is an ISAPI filter?   •      It's an assembly (.dll file) that can add or change the way IIS works.   •      They can be enabled globally for your web server or on a site-by-site basis.   When the IIS server receives a request, enabling the ISAPI fi…
Integration Management Part 2
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Suggested Courses

850 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question