After upgrading to the latest version of the facebook php sdk and fb module, we started having issues on ie7 and ie8 during Facebook Connect.

When a user clicks on a facebook connect button, the login window opens as it should.

But when that user logs in on that window, It redirects to an empty page and that window stays open, with a js error:

Line: 13
Char: 3206
Error: Permission denied
Code: 0
URL: https://myurl.com/fb/channel?fb_xd_fragment#?.....

The same error is also displayed on the main page.

There are some fixes about this issue on ( http://bugs.developers.facebook.net/show_bug.cgi?id=19042 ) and ( http://bugs.developers.facebook.net/show_bug.cgi?id=20168 ) that is saying that adding:

    FB.UIServer.setActiveNode = function(a,b){FB.UIServer._active[a.id]=b;};
    FB.UIServer.setLoadedNode = function(a,b){FB.UIServer._loadedNodes[a.id]=b;};

after FB.init() would solve this issue. But if I applied it correctly ( I added these lines below FB.init() in fb.js which is the only place that function is called ) they didn't work on me.

What do you suggest?

Comments

korayal’s picture

Status: Active » Closed (fixed)

I figured there is nothing wrong with the module.

I have seen that there is a server IP whitelist on the APP settings in facebook and it was set to wrong IP. But it didn't make sense since we were able to use FB connect on safari, chrome and firefox and ie9.

Then I fixed the issue changing the .htaccess like this:

  # To redirect all users to access the site WITHOUT the 'www.' prefix,
  # (http://www.example.com/... will be redirected to http://example.com/...)
  # uncomment and adapt the following:
   RewriteCond %{HTTP_HOST} ^www\.mysite\.com$ [NC]
   RewriteRule ^(.*)$ https://mysite.com/$1 [L,R=301]

I just added the https:// to the RewriteRule and It began working again.