Since upgrading to DNN 4.0.2 we've been seeing lots of "Cannot use a leading .. to exit above the top directory." exceptions in event viewer. This is NOT isolated to any specific module, any specific tab, etc...it happens all over the site and on all of our portals (we have a couple hundred portals). It's taken a long time to nail down the source, but I finally figured out that this is happening when Googlebot or Yahoo Slurp crawlers hit my site.
Has anyone else experienced this? What can I do to try and track this down? These URLs come up fine in my browser, and there is no ".." reference anywhere in the page source. I believe this is causing us to lose rankings on both Google and Yahoo because they can't index our content.
I don't see anything strange in the URL requested if I check my IIS logs, except for the server throwing back a 500 code:
2006-03-12 17:47:08 216.xxx.xxx.xxx GET /src/Links/tabid/4268/Default.aspx - 80 - 66.249.66.6 Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html) - 500 0 0 3266 253
And I can't determine anything useful from the event viewer trace.
Event Type: Warning
Event Source: ASP.NET 2.0.50727.0
Event Category: Web Event
Event ID: 1309
Date: 3/12/2006
Time: 9:47:08 AM
User: N/A
Computer: server
Description:
Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 3/12/2006 9:47:08 AM
Event time (UTC): 3/12/2006 5:47:08 PM
Event ID: 4dc95dc4c2384f2e803e355c7fcac3f7
Event sequence: 287
Event occurrence: 23
Event detail code: 0
Application information:
Application domain: /LM/W3SVC/1/ROOT-1-127866544353437500
Trust level: Full
Application Virtual Path: /
Application Path: C:\DotNetNuke\
Machine name:
Process information:
Process ID: 4844
Process name: w3wp.exe
Account name: NT AUTHORITY\NETWORK SERVICE
Exception information:
Exception type: HttpException
Exception message: Cannot use a leading .. to exit above the top directory.
Request information:
Request URL: http://www.mysite.com/Default.aspx?TabId=4268
Request path: /Default.aspx
User host address: 66.249.66.6
User:
Is authenticated: False
Authentication Type:
Thread account name: NT AUTHORITY\NETWORK SERVICE
Thread information:
Thread ID: 1
Thread account name: NT AUTHORITY\NETWORK SERVICE
Is impersonating: False
Stack trace: at System.Web.Util.UrlPath.ReduceVirtualPath(String path)
at System.Web.Util.UrlPath.Reduce(String path)
at System.Web.Util.UrlPath.Combine(String appPath, String basepath, String relative)
at System.Web.HttpResponse.ApplyAppPathModifier(String virtualPath)
at System.Web.UI.HtmlControls.HtmlForm.GetActionAttribute()
at System.Web.UI.HtmlControls.HtmlForm.RenderAttributes(HtmlTextWriter writer)
at DotNetNuke.Common.Controls.Form.RenderAttributes(HtmlTextWriter writer)
at System.Web.UI.HtmlControls.HtmlControl.RenderBeginTag(HtmlTextWriter writer)
at System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output)
at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
at System.Web.UI.HtmlControls.HtmlForm.RenderControl(HtmlTextWriter writer)
at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer)
at System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer)
at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
at System.Web.UI.Control.RenderControl(HtmlTextWriter writer)
at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children)
at System.Web.UI.Control.RenderChildren(HtmlTextWriter writer)
at System.Web.UI.Page.Render(HtmlTextWriter writer)
at DotNetNuke.Framework.PageBase.Render(HtmlTextWriter writer)
at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter)
at System.Web.UI.Control.RenderControl(HtmlTextWriter writer, ControlAdapter adapter)
at System.Web.UI.Control.RenderControl(HtmlTextWriter writer)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)