Back to Top

How to use Redis for Magento 2 session management

Updated 23 May 2023

To use Redis for session management in Magento 2, you’ll need to configure Magento to utilize Redis as the session storage backend. Here’s a step-by-step guide on how to set it up

Install Redis

Make sure you have Redis installed and running on your server or local environment. You can download Redis from the official website and follow the installation instructions for your operating system.

Configure Magento 2 to use Redis for session storage:

1. Log in to your Magento 2 server or access the Magento 2 codebase.
2. In the Magento 2 root directory, open the `app/etc/env.php` file.
3. Locate the `session` configuration section, which should look like this:

'session' => [
    'save' => 'files',
    'save_path' => 'path/to/session/files',
]

4. Replace the ‘save‘ value with ‘redis‘ and add a ‘redis‘ key to the ‘session‘ array with the Redis server configuration:

'session' => [
    'save' => 'redis',
    'redis' => [
        'host' => '127.0.0.1',
        'database' => '2',
        'log_level' => '4',
        'port' => '6379',
        'password' => '',
        'timeout' => '2.5',
        'persistent_identifier' => '',
        'compression_threshold' => '2048',
        'compression_library' => 'gzip',
        'max_concurrency' => '6',
        'break_after_frontend' => '5',
        'break_after_adminhtml' => '30',
        'first_lifetime' => '600',
        'bot_first_lifetime' => '60',
        'bot_lifetime' => '7200',
        'disable_locking' => '0',
        'min_lifetime' => '60',
        'max_lifetime' => '2592000',
        'sentinel_master' => '',
        'sentinel_servers' => '',
        'sentinel_connect_retries' => '5',
        'sentinel_verify_master' => '0'
    ]
]

5. Save the changes to the `env.php` file.
Clear Magento cache: Clear the Magento cache to ensure the new session configuration takes effect. You can do this by running the following command from the Magento root directory:
php bin/magento cache: clean

Searching for an experienced
Magento Company ?
Find out More

Test session management with Postman:

1. Open Postman or any REST API testing tool.
2. Set the HTTP method to POST.
3. Set the URL to your Magento 2 base URL followed by /rest/V1/integration/admin/token (e.g., `http://yourmagento2domain.com/rest/V1/integration/admin/token).
4. In the request body, select
`form-data` and add the following key-value pairs:

`username`: Your Magento 2 admin username
`password`: Your Magento 2 admin password
5. Click the “Send” button to send the request. This will return an access token.
6. Copy the access token from the response.

1. Set the HTTP method to GET.
2. Set the URL to your Magento 2 base URL followed by /rest/V1/store/storeViews.
3. Add a header with the following key-value pair:

`Authorization`: Bearer [access_token]
Replace
`[access_token]` with the access token you obtained in the previous step.
d. Click the “Send” button to send the request. This will retrieve the store views information.

Redis monitor command (If you use Redis for session storage, you’ll see output similar to the following)

redis-cli monitor

Session storage

redis-cli monitor
redis-cli monitor

Redis ping command

redis-cli ping

PONG should be the response.

More information
redis-cli command reference

That’s it! You have now configured Redis for session management in Magento 2 and tested it using Postman. You can continue exploring other Magento 2 REST APIs using the access token and appropriate endpoints.

We hope it will help you. Thank you!!

If any issue or doubt please feel free to mention in comment section.

We would be happy to help. Happy Coding!! 🙂

. . .

Leave a Comment

Your email address will not be published. Required fields are marked*


Be the first to comment.

Back to Top

Message Sent!

If you have more details or questions, you can reply to the received confirmation email.

Back to Home