This project is read-only.

Error after 1.6 upgrade - referrers.aspx

Topics: ASP.NET 2.0
Feb 10, 2010 at 6:01 AM
Edited Feb 10, 2010 at 6:02 AM

I have upgraded from blog engine .net 1.5 to 1.6.  Everything seems to be working except I get the following error when trying to load referrers:

Error Details:

Url :

Raw Url : /admin/Pages/referrers.aspx

Message : Exception of type 'System.Web.HttpUnhandledException' was thrown.

Source : System.Web

StackTrace : at System.Web.UI.Page.HandleError(Exception e)

at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

at System.Web.UI.Page.ProcessRequest()

at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)

at System.Web.UI.Page.ProcessRequest(HttpContext context)

at ASP.admin_pages_referrers_aspx.ProcessRequest(HttpContext context)

at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()

at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

TargetSite : Boolean HandleError(System.Exception)

Message : Access to the path 'Friday.xml' is denied.

Source : mscorlib

StackTrace : at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)

at System.IO.FileInfo.Delete()

at BlogEngine.Core.Providers.XmlBlogProvider.FillReferrers() in C:\Data\Development\BlogEngine.NET\BlogEngine\DotNetSlave.BusinessLogic\Providers\XmlProvider\Referrers.cs:line 80

at BlogEngine.Core.Referrer.get_Referrers() in C:\Data\Development\BlogEngine.NET\BlogEngine\DotNetSlave.BusinessLogic\Referrer.cs:line 158

at BlogEngine.Core.Referrer.get_ReferrersByDay() in C:\Data\Development\BlogEngine.NET\BlogEngine\DotNetSlave.BusinessLogic\Referrer.cs:line 211

at admin_Pages_referrers.BindDays()

at admin_Pages_referrers.Page_Load(Object sender, EventArgs e)

at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)

at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)

at System.Web.UI.Control.OnLoad(EventArgs e)

at System.Web.UI.Control.LoadRecursive()

at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

TargetSite : Void WinIOError(Int32, System.String)

Feb 10, 2010 at 7:22 AM

Referrers data is stored differently now.  Instead of Monday.xml, Tuesday.xml, etc., the data is stored in Xml files with the date in the filename.  I believe the format is 10.02.08 (for Feb 8 2010).

One advantage of this new format is that you can store referrers data for more than 7 days now.  It's a new option on the Referrers tab.

The code is trying to delete your old file, Friday.xml, but is unable to.  This is probably because BE doesn't have Delete permissions on that folder.

I don't believe you'll be able to use the old referrers data in those old files (Friday.xml, Monday.xml, etc).

I would just manually delete those files from the App_Data\log folder.

I would also try and make sure the ASPNET / Network Service account has Deletion permissions on the App_Data folder.  Because going forward, these new files will get deleted after the number of log "retention" days you set has passed (this is the new option I mentioned above).  And if it can't delete the files, then you'll probably get this error again.

Feb 11, 2010 at 6:47 PM

Thanks!  It was a permissions issue.