Laravel 5.5 : 세션 저장에 Redis 사용 (로컬 환경)

3807 단어 laravel5.5
세션의 대상을 기본 파일에서 Redis로 변경합니다.
그러나 이것은 필수는 아닙니다. 대상이 파일로 남아도 전혀 문제가 없습니다.
Redis

상위 기사



Laravel 5.5에서 기본 CRUD 만들기 - Qiita

Redis 설치



먼저 원래 Redis 및 GUI 도구 RDM을 설치합니다. 자세한 것은 아래를.
(과거 기사) Windows : PhpRedis 및 Predis 사용 준비

이 이후에는 아래의 연결 설정을 전제로 진행합니다.
  • 호스트: 127.0.0.1
  • 포트: 6379
  • 인증: 없음

  • Predis



    사용 준비



    PowerShell
    # Composerでインストールする
    > composer require predis/predis
    

    .env
    # セッションの保存先をfileからredisへ変更
    SESSION_DRIVER=redis
    
    # デフォルトのままでOK
    REDIS_HOST=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379
    

    동작 확인



    세션을 파일에 저장했을 때와 마찬가지로 매우 일반적으로 session 도우미을 사용할 수 있습니다.
    아래와 같이 루트를 추가하고 브라우저에서 http://(ドメイン)/test-session 에 액세스하면 こんにちはこんにちは!! 가 표시됩니다.

    routes/web.php
    Route::get('test-session', function () {
        session(['foo' => 'こんにちはこんにちは!!']);
        return session('foo');
    });
    

    RDM으로 확인합니다.
    아래와 같이 laravel:<セッションID> 라는 키명으로, Laravel 내에서 사용되고 있는 다른 세션과 함께 보존되고 있습니다.



    PhpRedis



    PhpRedis 자체의 설치에 대해서는, 앞서 언급한 아래의 기사를 봐 주세요.
    (과거 기사) Windows : PhpRedis 및 Predis 사용 준비

    Laravel과 함께 사용하려면 clientphpredis로 변경하면됩니다.

    config/database.php
         'redis' => [
    
    -        'client' => 'predis',
    +        'client' => 'phpredis',
    

    동작 확인을 위해 앞의 페이지를 다시 로드해 보세요.
    이전과 달리 세션을 사용할 수 있어야합니다.php.ini에서 PhpRedis를 비활성화하고 Apache를 다시 시작하고 페이지를 다시로드하면 이번에는 오류가 발생하므로 세션 저장에 Predis가 아닌 PhpRedis가 사용되고 있음을 알 수 있습니다.

    좋은 웹페이지 즐겨찾기