Topic-icon Error 500 (View not found [name, type, prefix]: jfbconnect, html, jfbc

Active Subscriptions:

None
I'll resend you the credentials. In the meantime, I did do the test (i.e. instead of "same page", I chose a real menu item of "Home") and that didn't help.

I didn't mean that the massive scale patch got rid of sessions, they just accomodate it in some way such as guest sessions are ignored by varnish. By the way, you have to remember that the G+ and TW giving the 500 error doesn't happen 100% of the time. There are times that it logs me in just fine, but more often then not we do see the 500 error.
The topic has been locked.
Support Specialist
We're in the site now and trying to narrow things down. I also downloaded the Massive Scale patch from the /root directory, as I'd like to see what's happening there. I hope that's ok with you, if not, let me know.

Unfortunately, I've been trying for about an hour and haven't been able to recreate the 500 error once. It was very easy to create a day or so ago. I'm assuming you didn't change anything. We'll test again in a little while to see if it starts up again. If you did change anything, let me know.

For sessions, I knew what you meant above about just being guest sessions. The problem is that JFBConnect uses guest sessions to store information about the user as they go through different login/registration paths. For instance, if you have the "Registration Component" set to "EasySocial", this is what happens:
* User clicks "Login with xyz"
* JFBConnect stores a session variable for that guest user stating that they were authenticating with Facebook, Google or Twitter
* JFBConnect redirects the user to the standard EasySocial registration page
* After the user goes through EasySocial and registers, JFBConnect is notified that a new user has been created
* At that point, we check if the session var above is set.. if so, we 'connect' the newly created user from EasySocial to their Facebook, Google, or Twitter account.
If that guest session variable doesn't exist, the connection won't be made.

That's one example of *many* cases where we use session variables to track a user from before they login/register until after.

Again, I'm looking into the cause of the problems, but i'm running into weird errors throughout the admin area of your site. Hopefully you can help me understand what may be happening:
* I can't access the Joomla Global Configuration area. It's a white page with some links. My guess is there's a PHP error on the page, but error reporting is off, so I can't see it.
* If I try to go to the JFBConnect -> Configuration or -> Profiles area, I get:

502 Bad Gateway
nginx/1.1.19

Social and some other configuration areas work fine.
* The version check at the bottom of the JFBConnect pages reads "Version: ", which means that JFBConnect can't read the XML file from it's own directory.
All of the above are likely due to read permission issues where JFBConnect can't read the XML files for the setup of those pages. Not sure why they would be incorrect though.

Miscellaneous Observations
Your site allows access from both www and non-www. I'd recommend setting up a redirect from www to non-www or the other way around. It's better for search engines and general accessibility.

I'll keep you posted on what I find as I test later.

Thanks,
Alex
The topic has been locked.
Active Subscriptions:

None
12 years 6 months ago - 12 years 6 months ago #39234 by haibar
First of all, I should state that I'm at Joomla 3.2 now even though this post originated in the Joomla 2.5 category.

I think I understand better the source of the 500 during login via JFBConnect. If a page is old (i.e. the session has expired) and I go into it (perhaps the page was even cached in the browser), then I often get that 500. Once I go back and refresh, I see the Joomla notice of "Session has expired, please login again" and then JFBConnect succeeds.

Could a "stale session" that comes from an older page (either browser left open, page cached, etc) with an expired session cause this?

[Quick Edit: I just retried from another source that also had an expired session with the same behavior]
Last edit: 12 years 6 months ago by haibar.
The topic has been locked.
Support Specialist
You're correct about the session issue. We've been investigating this as well and it looks like some of our new 'security' checks in v5.2.x are causing this failure. The options are to a) allow for sessions to expire, but provide a real error/warning message or b) skip the session check as we've done in previous releases.

We're pretty much inclined to go with b) as it hasn't been a problem in the past and a) is confusing and problematic for users.

To fix, for now, please edit the /components/com_jfbconnect/controllers/authenticate.php file. Around line 23, you'll see:
if (!JSession::checkToken('get'))
            $this->redirect(JRoute::_('index.php'), JText::_('JLIB_ENVIRONMENT_SESSION_EXPIRED'));
and around line 44, you'll see:
if ($token != $returnToken)
            $this->redirect(JRoute::_('index.php'), JText::_('JLIB_ENVIRONMENT_SESSION_EXPIRED'));
Comment or delete those 4 lines and test again.

I hope that helps, but if not, let me know.

Thanks,
Alex
The topic has been locked.