My users are experiencing login problems using Facebook on mobile device, doing login the page doesn't change probably because the devices still shows the cached page.
Are there any way to force the cache reload on login?
Any other tips?
What kind of caching do you have enabled? If you're using browser caching, you shouldn't be. Various extensions, templates or the System - Page Cache plugin that comes with Joomla can enable this. Browser caching should not be used on any site where authentication is performed.
If that doesn't help, do you see the same issue if the use logs in with Joomla credentials as well, or is this just with social authentication?
We are using joomla conservative cache.
There's no redirection after login, but the user should see the same page with the content available for registered users.
This is working on desktop pc and on some mobile device but in many other cases (and we were able to replicate) this is not happening and the page still shows the "login with facebook" button as the user was not able to login. If you refresh the page the login button disappear and the user can see he is logged properly.
Of course this behaviour generate a huge misunderstanding because users try to login over and over again and they are not able to access registed user functions.
Your site absolutely has some sort of browser caching enabled. If you go to the site and click the refresh button in a browser, a 304 response code is being returned:
A 304 code tells the browser that it should load it's previously cached HTML for the current URL. So, even if a user has just authenticated, the non-authenticated HTML will be displayed by the browser. We can't fix that in JFBConnect. Conservative caching in Joomla will *not* return 304 headers. You must be using something else, either from a Joomla extension (like the Joomla - Page Cache plugin) or in your server itself (nginx looks to be your server software, which can implement browser caching on it's own).
I hope that helps narrow things down, but if you get the 304 response codes removed and still have issues, just let us know.
Our server use nginx, the cache of .php is disabled.
I think that FB on successfull login redirect to the page friendly url (friendly url is cached), if your plugin could pass as return uri the real page url may be the problem will be solved.
What do you think about?
It's not caching of PHP files that's the problem. It's the directive to tell browsers to cache the content and respond with 304 codes telling the browser to use that cached data. That's different than optimizing and caching the execution of PHP files.
The issue will present itself on various pages, regardless of where they are redirected. For instance, if the user comes to your home page and navigates through 4 different pages.. then decides to log in, all the pages the user has already viewed will still be shown as if they aren't logged in. Feel free to try yourself and see the behavior.
You cannot use browser caching on sites that allow authentication *and* change the content of pages based on if the user is logged in or not. That's simply a fact of browser caching and we can't do anything about it.
I hope that helps explain. There is nothing in JFBConnect that can be done to get around this.
My users are experiencing issues on mobile devices when they try to login. Not everybody, seems link this error is only on specific devices. Could you give me some ideas where to look for. You could try going on aspect ratio calculator webpage and try to login from there. On that page I received feedback from my users. Thank you!
Have a great day!
Please create a separate thread for your issue. This thread is dealing with login via Facebook or other social networks. Since I don't see a subscription associated with your account, I'm assuming that your issue is with logging in via the SCLogin module. In general, you will also need to provide more details, as reproducing your issue is impossible without more specific details on which URLs, which mobile devices you are using, the problem behavior and any error messages that you are seeing.