I just noticed in my Analytics stats that one of the most popular pages on my site is a page that doesn’t exist: mysite.com/?fb_xd_fragment= Over 5% of my visitors visit that page, and see nothing! It turns out that this is a known bug with the Facebook Like Button. It’s some problem with Internet Explorer and Facebook, where that string is posted to Facebook when somebody who is using Internet Explorer visits your site and “likes” it.
It’s pretty upsetting to find out that one in twenty visitors is directed to a non-existent page. But it’s even worse than that. When I started looking into it more, I found that the string of text was also appearing on my other URLs, appended to the end, so I would see visits to pages such as mysite.com/my-post-about-something/?fb_xd_fragment= More non-existent pages! Taken together, these phantom URLs accounted for almost 10% of my visitors.
It’s truly incomprehensible to me that this could be a glitch that has persisted for over a year without being fixed. Once you notice it, it’s clear that other people have been heavily affected by this in the past. I’ve read articles and forum comments that say this glitch was limited to the XFBML version of the Like Button, but I use the iframe version, so I can verify that it’s not only the XFBML version that can cause this unwanted artifact.
People have posted numerous ways to fix this glitch, but most of them are a big pain. They involve adding a piece of code to your header, then finding and adding another code to FB.init and, finally, adding yet another code to your footer. I really didn’t want to go through all that, and I was going to be pretty pissed off if that was the only solution. Luckily, I found a much-easier to implement solution that works perfectly.
To correct this bug, you need to FTP into your site and find your .htaccess file. Open the file for editing. Then you need to add this one piece of code to the top of the file:
RewriteCond %{QUERY_STRING} ^fb_xd_fragment
RewriteRule ^(.*)$ http://angusblack.com\/$1? [R=301,L]
You will, of course, want to replace “angusblack.com” with the name of your site (with or without the www, whichever version you prefer). Then save the file, make sure it gets uploaded back to your site files, and you should be good to go! This will simply strip out the fb_xd_fragment string at the end of the URL and redirect the visitor to the page they should have seen in the first place. It works with your homepage or any other page, so the visitor who clicked a link to mysite.com/my-post-about-something/?fb_xd_fragment= will actually land on mysite.com/my-post-about-something
I think this is a pretty big problem that should have been fixed by now. It used to be even worse, though, because a year or so ago, Google would actually index those non-existent pages, and they would compete with your real pages I the SERPs. It seems that Google was smart enough to figure out a way to stop indexing those pages, though, since doing a search for “inurl:fb_xd_fragment” no longer returns a load of those non-existent pages—only articles like mine that tell people how to correct the bug.
Hope this helps you if you find that you have this problem.

