Operation not Allowed

R

Ron Hinds

I recently moved my ASP application from W2K SP4 to W2K3 Web Edition SP2.
Previously, everything worked fine. Now I get the following error from a
couple of pages that read in and process a XML document:

Event Type: Error
Event Source: Active Server Pages
Event Category: None
Event ID: 5
Date: 9/4/2008
Time: 11:58:46 PM
User: N/A
Computer: XXXXX
Description:
Error: File /ASPPage.asp Line 27 Operation not Allowed.

Here is the line of code in question:

oDocIn.load(Request.BinaryRead(Request.TotalBytes))

oDocIn is defined as follows:

Set oDocIn = Server.CreateObject("MSXML2.DOMDocument")

As I said, this code was working fine on the old web server. Does anyone
have any ideas? Thanks!
 
A

Anthony Jones

Ron Hinds said:
I recently moved my ASP application from W2K SP4 to W2K3 Web Edition SP2.
Previously, everything worked fine. Now I get the following error from a
couple of pages that read in and process a XML document:

Event Type: Error
Event Source: Active Server Pages
Event Category: None
Event ID: 5
Date: 9/4/2008
Time: 11:58:46 PM
User: N/A
Computer: XXXXX
Description:
Error: File /ASPPage.asp Line 27 Operation not Allowed.

Here is the line of code in question:

oDocIn.load(Request.BinaryRead(Request.TotalBytes))

oDocIn is defined as follows:

Set oDocIn = Server.CreateObject("MSXML2.DOMDocument")

As I said, this code was working fine on the old web server. Does anyone
have any ideas? Thanks!

How big is the entity body you are loading. Its likely larger than 200K.

IIS6 limits the AspMaxRequestEntityBody to 200K. (It was something much
larger on IIS5). You will need to modify this value to allow the larger
body.
 
R

Ron Hinds

Anthony Jones said:
IIS6 limits the AspMaxRequestEntityBody to 200K. (It was something much
larger on IIS5). You will need to modify this value to allow the larger
body.

Is that a regsitry setting?
 
A

Anthony Jones

Ron Hinds said:
Is that a regsitry setting?

No its a Metabase setting. In IIS there is Metabase.xml file tuck away with
all the settings. Many IIS admins well tinker with this directly but its
better to use a tool whose job it is to do that.

If you haven't already got the resource kit:-

http://www.microsoft.com/downloads/...ee-a71a-4c73-b628-ade629c89499&displaylang=en

Now you could set this value for your entire site but it would be better to
limit it to only the directories (or even files that need it). The purpose
of the setting is to limit your site exsposure to inadvertant or malicous
attempt to tie up your site by sending ludicrously large amounts of data to
it.

In IIS Manager find the directory or file you want to apply the setting to.
Open its properties and look at the enable content expiration check box on
the http headers tab. If its on skip the rest of this paragraph. If its
off turn it on, apply, turn it off and OK. This creates a path to the
folder or file in the metabase and saves a fair bit of faffing about.

Now open the MetaBase explorer from the IIS resources.

Navigate down the path LM\W3SVC\xxxx\root\yourpath where xxxx is the site ID
(if you have multiple sites click on each and the ServerComment value in the
right hand pane will tell which one it is) and yourpath is the path down to
the folder or file you want to apply the setting to.

Right mouse click the folder or file in the tree and choose New | DWord
record. In the Record Name or Identifier drop down choose
AspMaxRequestEntityBody (or simply type 7053 in the same box). Click OK.

Double click the value that has appeared in the right hand pane and enter
the max bytes you want to allow.
 
R

Ron Hinds

Anthony Jones said:
No its a Metabase setting. In IIS there is Metabase.xml file tuck away
with all the settings. Many IIS admins well tinker with this directly but
its better to use a tool whose job it is to do that.

If you haven't already got the resource kit:-

http://www.microsoft.com/downloads/...ee-a71a-4c73-b628-ade629c89499&displaylang=en

Now you could set this value for your entire site but it would be better
to limit it to only the directories (or even files that need it). The
purpose of the setting is to limit your site exsposure to inadvertant or
malicous attempt to tie up your site by sending ludicrously large amounts
of data to it.

In IIS Manager find the directory or file you want to apply the setting
to. Open its properties and look at the enable content expiration check
box on the http headers tab. If its on skip the rest of this paragraph.
If its off turn it on, apply, turn it off and OK. This creates a path to
the folder or file in the metabase and saves a fair bit of faffing about.

Now open the MetaBase explorer from the IIS resources.

Navigate down the path LM\W3SVC\xxxx\root\yourpath where xxxx is the site
ID (if you have multiple sites click on each and the ServerComment value
in the right hand pane will tell which one it is) and yourpath is the path
down to the folder or file you want to apply the setting to.

Right mouse click the folder or file in the tree and choose New | DWord
record. In the Record Name or Identifier drop down choose
AspMaxRequestEntityBody (or simply type 7053 in the same box). Click OK.

Double click the value that has appeared in the right hand pane and enter
the max bytes you want to allow.

Much Thanks!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,537
Members
45,022
Latest member
MaybelleMa

Latest Threads

Top