November was an odd month for me online. Obviously it was my least active on this page (scroll down to the bottom and you’ll still see posts from October). But more than that, I withdrew from many of my usual visits and didn’t keep up with the news. This was brought on by many different issues, however it was a software related one that kept it going for this long.
A lot of my daily reads are WordPress blogs. It’s not really on purpose, but quite often I found cool sites through the forums and that led to other users who I also started following. To keep up with all of these sites I looked for a good RSS Reader and found SharpReader. This worked well until all of the WordPress-run sites (except for my own) suddenly stopped working. I kept getting this message:
Error reading URL: The underlying connection was closed: The server committed an HTTP protocol violation.
Everything else about the sites seemed fine (you know, when I would bother to use a browser to see them), and I could view them in other aggregators, so I thought something was wrong with SharpReader. After some poking around I found the real problem was with .NET. Okay, it wasn’t exactly a problem with .NET so much as the lastest service pack for the framework made the parser more strict, causing programs to balk when they received an extra space in feeds. And while the nightly builds of WP that I run had no problems, the current 1.2 version did have an extra space.
Since I wasn’t goind to be able to convince everybody to fix the error in their websites before 1.3 comes out (ok, I really just didn’t feel like trying), I knew I needed to do something on my side. After trying a few other readers, I really didn’t want to switch from Sharpreader. Although it has one or two minor irritations, the benefits far outweigh them. For starters, I love the hierarchical format, which allows me to read multiple threads in multiple categories at the same time. With my setup I can decide whether I want to read all of my dailies, or just the Livejournal links, or even just one particular site at a time. Since my feeds have been hovering in limbo, I was barely keeping up with any sites and getting frustrated.
Today I finally fixed it. A couple weeks ago I found an article explaining how to change this behavior. Unfortunately that didn’t solve my problem. By creating the config file, SharpReader simply wouldn’t start. But today I noticed a more recent comment on the post with a caveat:
One gotcha, though – anyone cuttign and pasting from the recipe abve will get a corrupt config file warning, because it’s grown curly open quotes (“) for both open and close of the “true” and not simple quotes ("). You do need to manually replace them.
Sure enough, I created the
SharpReader.exe.config and pasted in the proper config:
<httpWebRequest useUnsafeHeaderParsing="true" />
Afterwards I deleted the quotes and retyped them, fired up Sharpreader, and lo and behold, my feeds are once again being read. Now, while I appreciate Microsoft correcting code for standards, I am even happier that I can turn that behavior off… at least for now.