Phil Winstanley's Error Reporting and the Trace in ASP.Net 2.0
Monday, June 19, 2006 10:43:44 AM (GMT Daylight Time, UTC+01:00)
We've been using Phil Winstanley's ASP.Net WebException handler for a while now it's great (see http://weblogs.asp.net/plip/archive/2004/04/17/114984.aspx) the problem with it was that we couldn't get access to the Trace in ASP.Net 1.1. Doug and I spoke with Phil about it but at the time there wasn't a solution however he did say he thought there may be with the emergance of ASP.Net 2.0 (this was a few months before it was due to be released).
Now we're working in 2.0 on a regular basis I thought I'd give it a go and think I have a solution (though quite how reliable it is I'm not 100% sure). The fix is to tap into the current HttpContext and "switch" the trace's output on and then off before and after handling the exception and voila!
Here's my solution:
TraceContext t = HttpContext.Current.Trace;
t.IsEnabled = true;
WebException WE = new WebException();
WE.CurrentException = Server.GetLastError();
t.IsEnabled = false;
Exeter Circuit - The Exe Estury
Sunday, June 18, 2006 10:57:40 AM (GMT Daylight Time, UTC+01:00)
So as ever, people want to know how our race went today, well it's not all good news today I'm affraid, after a couple of weeks of insomnia and Sam not having a good night of rest because of returning home we didn't do so well. Luckily we did make it all the way around the 8miles but lack of sleep and practice together meant we were all over the place on the open water (about half the race) and ran out of steam around the 4mile mark.
We still did manage a time of 1hr 22mins which, although not our best is still respectable as there was a fair head wind most of the way. I'm not going to dwell on it too much though as we couldn't expect much more without the training we really do need to be doing. The next race is at Bradford-on-Avon after our holiday so hopefully we'll be pretty refreshed and ready to kick some ass!
John, hope you're ready for us to beat you, it was close last race, not as close this race (about 1min behind) but next time...
As for everyone else, they did ok, Pat aparently fell out but the PMC team did well on the whole so well done guys -and well done Sam, a little more practice in the Cream Regina and we'll be fine.
Custom 404 Error Pages
Friday, June 16, 2006 9:48:54 PM (GMT Daylight Time, UTC+01:00)
I made an interesting discovery this morning. A few weeks ago I was doing a little SEO on The Wargame Company (Devon) and thought I would look into utilising Google SiteMaps. After creating the XML file with the correct format it's just a matter of having Google approve it. They do this by accessing a random page i.e. www.domain.com/GooglesWonderfulPageddmmyyyyhhmmssmmm (which clearly should return a 404) and check the response code -I guess to ensure that you're not trying to spoof the pages in some way.
"What's the problem? I've got custom 404 pages" I hear you cry! Well, if like us you've written some fancy page to handle the error and email you/log it to a database, it turns out that you're not returning a 404 error at all!
What I discovered was that if you configure IIS to handle 404 error pages with a URL you're actually returning a response code of 200. After a little thinking, the only conclusion we could come to was that when setting it as a URL in IIS you're actually redirecting the request which is either a 301 or perhaps a 307 (see http://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html for more information on response codes) and then the final page the user hit's returns a 200 (Response Status "OK") rather than the desired 404 -clearly not what we want!
After a little more investigation we also found that the same thing happened when using ASP.Net's built in handlers and the same thing happens, the only time it doesn't is when you handle the 404 with a File in IIS rather than a URL.
"What can I do about it?" Well that's simple, if you're going to use a URL to handle your 404 errors, make sure you change the Response Status Codes to the correct code, i.e. 404, this is pretty simple to do:
ASP.Net 2.0: Page.Response.StatusCode = 404;
ASP.Net 1.1 (I think): Response.StatusCode = 404;
ASP: Response.Status = "404 You are Unauthorized"
I hope that helps someone out there!
Update: I've just run fiddler on The Wargame Company (Devon) and and can confirm you get a Response Status Code of 301 before the 200.
New TSD Design
Friday, June 09, 2006 5:08:07 PM (GMT Daylight Time, UTC+01:00)
Ok, The Site Doctor has moved on a fair amount since I started it up, we started off with a somewhat techy design (Version 1) which at the time I loved but as time went on felt it was somewhat cheesy so it was replaced with Version 2 in September 2004 and this has remained the face of The Site Doctor ever since. It’s a nice site but as far as the code quality is concerned it’s terrible, not to mention to SEO issues (to say the least!)
Site Design 1
Site Design 2
Site Design 3?
In the past both designs were tabular based and didn’t care too much for accessibility standards which are now at the fore-front of our minds so we felt it was once again time for a change, but what to do? Although I dabble and with enough time I can come up with some snazzy designs, this time I felt it was necessary to have someone “in the know” to put something together for us.
Mike from Butterfly Media stepped up to the mark with some great concepts, the current design he’s finalising for us is based on the following concepts (click the image to see the next example image): The New TSD design
Watch this space for an update in the next few weeks. I hope to have the final TSD design live shortly after I return from holiday along with a few other, well, niceties
I'd be interested to hear other people's thoughts on the new design
Saturday, May 27, 2006 6:57:22 PM (GMT Daylight Time, UTC+01:00)
Ok, for those of you who know me you'll know that when I first setup The Site Doctor I had a few goals, one of the main goals was to get a Mazda RX-8, well it's finally happened!
A little background/history:
When I first moved upto the West Midlands I started working at the University Hospital of Birmingham (UHB) as the Theatre Systems information manager (or something like that). Just before I left, I was leaving work with a friend (and colleague) Stuart Day when we walk past a car that had the most unbelievable presence, it looked like it was growling, coiled -ready to pounce. It was fantastic. With no idea of what it was or how much it would cost I said that it was going onto my list of goals.
A few days later we confirmed that it was a new Coupe from Mazda called the RX-8 and so the obsession began. It's been less than two years (only just!) but this weekend I went and ordered it and for those of you who still don't beleive me, I've scanned in the receipt (with my name on it )
Thailand here we come!
Friday, May 19, 2006 9:18:48 PM (GMT Daylight Time, UTC+01:00)
So today we booked our first real holiday in about 3 years. We had planned to pop over to Cuba for a couple of weeks for my birthday as it's somewhere that caught Stacey's eye a while ago. The problem is, in Cuba July is hurricane season so when we told the travel agent that we were thinking of Cuba her face was comical. Straight away -without even letting us explain why she was advising against it and asking to know where else we'd been thinking of. We mentioned Thailand and although it's the rainy season in July she assured us that it would be far better than Cuba for a chill-out holiday.
After what seemed like an age of looking for a suitable deal on hotel, flights and everything else we managed to find a good deal and so we're off to Thailand on July 8th. I'm really looking forward to it even if I am muttering about the RX-8 more. We're flying over to Bangkok on the 8th and driving straight to Hua Hin where we're staying for 10days in the Hilton. Then we're going back to Bangkok for 3 days before returning to the UK on Friday 21st.
Photos of the hotel in Hua Hin can be viewed at: the Hilton Website or Marriott Bangkok Website.