Możesz zapisywać sesje użytkowników do bazy danych dzięki funkcji session_set_save_handler
https://www.php.net/manual/en/function.session-set-save-handler.php
Potem watro zwrócić uwagę na czas ważności ciastka które wywyłamy do przeglądarki i tyle ;)
// Update cookie time expire
setcookie(session_name(), session_id(), time() + 2592000, "/", ini_get('session.cookie_domain'), true, true);