Severe URL Rewriting bug in Asp.Net v2 - Do not use CS 2.0 with Asp.Net v2
Posted
Tuesday, October 17, 2006 10:08 PM
by
Mischa Kroon
Hi all, a couple of days ago I came across a posting about a bug in URL Rewriting which will totally remove your site from google.
Here is the scoop:
http://communityserver.org/forums/536640/ShowThread.aspx
The title of the threat is appropriately named:
How to disappear from Google, Yahoo, MSN etc... indexes with CommunityServer 2.0 in less than a week...
That should get your attention.
So whats going on:
there appears to be a bug in: System.Web.UI.Html32TextWriter
aka the downlevel browser implementation of System.Web.UI.HtmlTextWriter
Which crashes when used in conjunction with:
Context.RewritePath(“~/page.aspx?ID=1”, False)
or:
Context.RewritePath(“~/page.aspx?ID=1”)
Solutions for this:
use:
Context.RewritePath(“~/page.aspx?ID=1”, True)
But this has a slightly different behaviour which might bring new pain.
Another option is to make sure that the System.Web.UI.HtmlTextWriter is used when a search engine hits the site.
This can be done with a browsercaps file.
or by adding a .browser file in the App_Browser directory of your website.
More details on the problem and solutions:
http://todotnet.com/archive/0001/01/01/7472.aspx
Browsercaps:
http://www.codeproject.com/aspnet/browsercaps.asp
and
http://browsers.garykeith.com/downloads.asp
This is problem has been reported to Microsoft though there hasn't been any kind of patch issued to my knowledge :(
This problem has been resolved for community server in CS 2.1.