Joomla session handler

Joomla session handler
Remacle Jean-Claude
4 minutes
2022-05-26
what is
how to
Joomla

The session handler is one of the most important features of Joomla, it helps users to stay logged in on the website.

In this short blog post, I'll discuss in details what the session handler is and how you can configure it.

What is Joomla session handler

The Joomla session handler helps users to stay connect after they are logged in on the frontend or administrator section of your website.
It keeps the connection open after you're idle for a certain time. The idle time is the session lifetime.

Where to find the Joomla session handler

You can find the Joomla session handler in the global configuration under the system settings.

This is the same for Joomla 3.x as the 4.x version.

What types of Joomla session handlers are there

There are 3 types of Joomla session handlers:

  • Database
  • PHP/Filesystem
  • Memcached (experimental)

Joomla Database session handler

The database option is the default setting for the Joomla session handler.
This type of session handler records all the data in the database in the session table.

Biggest disadvantage of this type of Joomla session handler is that it can make your database very heavy.
Especially when you have a website with a lot of users.

Joomla PHP/Filesystem session handler

This is the more advanced Joomla session handler in comparison with the Joomla database session handler.
The PHP/Filesystem session handler saves the session data in the PHP session handler.

Pay attention, do not enable this option is your server does not support it! It can block the login on the site.

The biggest advantages of the PHP/Filesystem session handler are:

  • much faster in comparison with the Joomla database session handler
  • it doesn't burden the database
  • ideal if you have a lot of users on your website

Joomla Memcache session handler

The Joomla Memcache session handler is very experimental, so be aware if you want to use this.
I recommend that you don't use it for live website and especially not if you don't know how this works.

The Joomla Memcache session handler is a custom session handler that store the user session data in memcache.
It uses a completely separate memcache instance, so you can use even a different server pool if you want.

The session keys keys are stored with the prefix memc.sess.key..

What is the Joomla session lifetime

The Joomla session lifetime is the time that the session handler keeps the connection for the user open after he's idle.
The timer will be reset each time the user do something on the website.

The default setting is 15 minutes.
So, if the user is idle for 15 minutes, the Joomla session handler will log out that user and he needs to log in again.

What is a shared Joomla session

There is an option to activate shared Joomla session. But what is that?
Will I share a session with someone else? No, it's not that.

When you enable the Joomla shared sessions option, a user's session will be shared between the frontend and administrator section of the site.
This is useful when you're active both sections and have to switch regular between them.

How to configure the Joomla session handler

First you need to log into the administrator section of your website.
Then you need to navigate to the global configuration and switch to the system tab.

And there you can find the Joomla session handler settings.

The default settings are:

  • Joomla database session handler
  • 15 minutes lifetime
  • no shared session

What is the best setting

It depends on what type website you got off course.
But in my experience, the best settings for the Joomla session handlers are as follow.

  • Joomla PHP/Filesystem session handler
  • 30 minutes lifetime
  • no shared session

Conclusion

Now, you know what the Joomla session handler is and why it's one of the most important features of Joomla.

If you need some guidance in finding the correct setting for your website OR having trouble with any other setting, we can help you.

Contact us