Link to home
Start Free TrialLog in
Avatar of erik_bradshaw
erik_bradshaw

asked on

Deploying a web service - Authentication mode error

I'm trying to deploy a web service that works find on my development machine but when on the web server comes up with the following error message.  

Server Error in '/' Application.
--------------------------------------------------------------------------------
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level.  This error can be caused by a virtual directory not being configured as an application in IIS.

Source Error:
Line 49:             ASP.NET to identify an incoming user.
Line 50:         -->
Line 51:             <authentication mode="None"/>
Line 52:             <!--
Line 53:             The <customErrors> section enables configuration
Source File: E:\WWW\Ibis\webservice\web.config    Line: 51
-------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42
ASKER CERTIFIED SOLUTION
Avatar of steveberzins
steveberzins

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of erik_bradshaw
erik_bradshaw

ASKER

Your right, when its a virtual directory is works.  I never realised a virtual directory was more that a simple mapping function.  Is there a reason for this behaviour (ie am I missing some IIS concept)

Also, when requesting accross the internet I get the message "...is only available for requests from the local machine", again, is there some simple setting I am missing ?

Thanks for your help
when you go to the web service test page from another machine you mean?
as long as the parameters are simple types, you can add this to the web.config, inside system.web, and it should enable you to test from another machine.
   <webServices>
        <protocols>
          <add name="HttpPost"/>
        </protocols>
    </webServices>
Thanks for your help steveberzins, both parts worked.

Still curious about why it need to be a virtual directory - one ony the namy mysteries of IIS for me.