Maison développement back-end tutoriel php laravel5.6 et thinkphp3.2 utilisent Redis pour partager une session

laravel5.6 et thinkphp3.2 utilisent Redis pour partager une session

Jul 07, 2018 pm 05:06 PM
laravel redis session thinkphp

Cet article présente principalement la solution consistant à utiliser redis pour partager des sessions entre laravel5.6 et thinkphp3.2. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

En pratique Parmi les projets, le projet historique a été développé avec thinkphp3.2. Il est désormais nécessaire de mettre à jour les fonctions. Il est prévu que les fonctions mises à jour soient développées avec laravel5.6.

Description du problème

Plusieurs problèmes clés doivent être résolus, dont l'un est celui de l'authentification des utilisateurs. Autrement dit, une fois que le système 1 s'est connecté, le système 2 reconnaît automatiquement ses informations de connexion. C'est-à-dire que l'essentiel doit être résolu : le problème de la session de partage Laravel et Thinphp.

Conception du projet

La session utilise Redis pour le stockage. Thinkphp et Laravel accèdent à Redis ensemble et obtiennent automatiquement les informations utilisateur authentifiées stockées dans Redis sur la base du même cookie.

Solution

thinkphp active le support redis

thinkphp3.2 n'a pas de support redis pour les sessions intégrées. À l'heure actuelle, nous utilisons les paramètres de php pour l'activer. Dans index.php, nous ajoutons les deux lignes d'instructions suivantes :

ini_set("session.save_handler", "redis");
ini_set("session.save_path", "tcp://redis:6379");
Copier après la connexion
Vous pouvez également l'ajouter au fichier de configuration config.php
À ce moment-là, lorsque thinkphp stocke le session, sera stocké sous le préfixe PHPREDIS_SESSION.

Ouverture de Redis dans Laravel

La méthode d'ouverture de Redis dans Laravel est relativement compliquée. Pour des informations spécifiques, vous devez vous référer à la documentation officielle pour utiliser composer pour installer Predis et effectuer les configurations associées.

Laravel obtient la session de thinkphp

Parce que laravel a complètement obsolète la session intégrée de PHP. Il n'y a donc aucun moyen pour nous d'obtenir des informations via $_SESSION (vous pouvez même obtenir une erreur de variable non définie). Parce que les cookies de Laravel sont cryptés. Par conséquent, nous ne pouvons pas utiliser le propre cookie de Laravel pour obtenir des informations sur les cookies.

Les idées d'implémentation spécifiques sont :

1 Obtenez le cookie natif.
2 Connectez PHPREDIS_SESSION à la clé du formulaire
3 Utilisez redis pour obtenir directement la valeur stockée dans la clé

...
use Illuminate\Support\Facades\Redis;
...
    $cookie = $_COOKIE['PHPSESSID'];
    $session = Redis::get('PHPREDIS_SESSION:' . $cookie);
Copier après la connexion
Cette $session est la valeur de session dans le système thinkphp.

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Laravel et le backend: alimentation logique d'application Web Laravel et le backend: alimentation logique d'application Web Apr 11, 2025 am 11:29 AM

Comment Laravel joue-t-il un rôle dans la logique backend? Il simplifie et améliore le développement backend par le biais de systèmes de routage, d'éloquente, d'authentification et d'autorisation, d'événements et d'auditeurs et d'optimisation des performances. 1. Le système de routage permet la définition de la structure d'URL et demande la logique de traitement. 2.Lao-éloquente simplifie l'interaction de la base de données. 3. Le système d'authentification et d'autorisation est pratique pour la gestion des utilisateurs. 4. L'événement et l'écoute implémentent la structure de code couplée de manière lâche. 5. L'optimisation des performances améliore l'efficacité de l'application par la mise en cache et la file d'attente.

Comment utiliser la ligne de commande redis Comment utiliser la ligne de commande redis Apr 10, 2025 pm 10:18 PM

Utilisez l'outil de ligne de commande redis (Redis-CLI) pour gérer et utiliser Redis via les étapes suivantes: Connectez-vous au serveur, spécifiez l'adresse et le port. Envoyez des commandes au serveur à l'aide du nom et des paramètres de commande. Utilisez la commande d'aide pour afficher les informations d'aide pour une commande spécifique. Utilisez la commande QUIT pour quitter l'outil de ligne de commande.

Optimisation des performances postgresql sous Debian Optimisation des performances postgresql sous Debian Apr 12, 2025 pm 08:18 PM

Pour améliorer les performances de la base de données PostgreSQL dans Debian Systems, il est nécessaire de considérer de manière approfondie le matériel, la configuration, l'indexation, la requête et d'autres aspects. Les stratégies suivantes peuvent optimiser efficacement les performances de la base de données: 1. Extension de mémoire d'optimisation des ressources matérielles: la mémoire adéquate est cruciale pour cacher les données et les index. Stockage à grande vitesse: l'utilisation de disques SSD SSD peut considérablement améliorer les performances d'E / S. Processeur multi-core: utilisez pleinement les processeurs multi-core pour implémenter le traitement des requêtes parallèles. 2. Paramètre de base de données Tuning Shared_Buffers: Selon le réglage de la taille de la mémoire du système, il est recommandé de le définir à 25% -40% de la mémoire système. work_mem: contrôle la mémoire des opérations de tri et de hachage, généralement définies sur 64 Mo à 256m

Comment implémenter Redis Counter Comment implémenter Redis Counter Apr 10, 2025 pm 10:21 PM

Redis Counter est un mécanisme qui utilise le stockage de la paire de valeurs de clés Redis pour implémenter les opérations de comptage, y compris les étapes suivantes: création de clés de comptoir, augmentation du nombre, diminution du nombre, réinitialisation du nombre et objet de comptes. Les avantages des compteurs Redis comprennent une vitesse rapide, une concurrence élevée, une durabilité et une simplicité et une facilité d'utilisation. Il peut être utilisé dans des scénarios tels que le comptage d'accès aux utilisateurs, le suivi des métriques en temps réel, les scores de jeu et les classements et le comptage de traitement des commandes.

Polyvylity de Laravel: des sites simples aux systèmes complexes Polyvylity de Laravel: des sites simples aux systèmes complexes Apr 13, 2025 am 12:13 AM

Le projet de développement de Laravel a été choisi en raison de sa flexibilité et de sa puissance pour répondre aux besoins de différentes tailles et complexités. Laravel fournit un système de routage, Eloquentorm, une ligne de commande artisanale et d'autres fonctions, soutenant le développement de blogs simples aux systèmes complexes au niveau de l'entreprise.

Comment optimiser les performances de Debian Readdir Comment optimiser les performances de Debian Readdir Apr 13, 2025 am 08:48 AM

Dans Debian Systems, les appels du système ReadDir sont utilisés pour lire le contenu des répertoires. Si ses performances ne sont pas bonnes, essayez la stratégie d'optimisation suivante: simplifiez le nombre de fichiers d'annuaire: divisez les grands répertoires en plusieurs petits répertoires autant que possible, en réduisant le nombre d'éléments traités par appel ReadDir. Activer la mise en cache de contenu du répertoire: construire un mécanisme de cache, mettre à jour le cache régulièrement ou lorsque le contenu du répertoire change et réduire les appels fréquents à Readdir. Les caches de mémoire (telles que Memcached ou Redis) ou les caches locales (telles que les fichiers ou les bases de données) peuvent être prises en compte. Adoptez une structure de données efficace: si vous implémentez vous-même la traversée du répertoire, sélectionnez des structures de données plus efficaces (telles que les tables de hachage au lieu de la recherche linéaire) pour stocker et accéder aux informations du répertoire

Différence entre MongoDB et Redis Différence entre MongoDB et Redis Apr 12, 2025 am 07:36 AM

Les principales différences entre MongoDB et Redis sont: Modèle de données: MongoDB utilise un modèle de document, tandis que Redis utilise une paire de valeurs clés. Type de données: MongoDB prend en charge les structures de données complexes, tandis que Redis prend en charge les types de données de base. Langue de requête: MongoDB utilise un langage de requête de type SQL, tandis que Redis utilise un ensemble de commandes propriétaires. Transactions: MongoDB prend en charge les transactions, mais Redis ne le fait pas. Objectif: MongoDB convient pour stocker des données complexes et effectuer des requêtes associées, tandis que Redis convient aux applications de mise en cache et à haute performance. Architecture: MongoDB persiste les données sur le disque, et Redis les enregistre par défaut

Fonction principale de Laravel: développement backend Fonction principale de Laravel: développement backend Apr 15, 2025 am 12:14 AM

Les fonctions principales de Laravel dans le développement back-end incluent le système de routage, l'éloquente, la fonction de migration, le système de cache et le système de file d'attente. 1. Le système de routage simplifie la cartographie de l'URL et améliore l'organisation et la maintenance du code. 2.Lesormorm fournit des opérations de données orientées objet pour améliorer l'efficacité du développement. 3. La fonction de migration gère la structure de la base de données via le contrôle de la version pour assurer la cohérence. 4. Le système de cache réduit les requêtes de la base de données et améliore la vitesse de réponse. 5. Le système de file d'attente traite efficacement les données à grande échelle, évite de bloquer les demandes des utilisateurs et d'améliorer les performances globales.

See all articles