首頁> 資料庫> Redis> 主體

nginx+redis怎麼實現session共享

WBOY
發布: 2023-05-26 12:49:06
轉載
1470 人瀏覽過

1.第一步是安裝redis,我的伺服器是windows的,下載的是免安裝版本,解壓縮以後就可以了,其目錄如下。一開始redis是預設不需要密碼,如果想要設定密碼,可以進入redis.windows.conf檔下找到requirepass,刪除前面的#號,在其後面便可以設定密碼。

nginx+redis怎麼實現session共享

2.從cmd進入redis的根目錄,鍵入下列指令:redis-server.exeredis.windows.conf。這樣就可以啟動redis了,如果啟動成功,就會出現下面畫面。當然還可以修改conf文件,加上密碼。 requirepass xxxxx

nginx+redis怎麼實現session共享

3.接下來我們可以做一些設定工作,來實作session資料的全域快取。

1)首先是加入jar包,如果你是maven項目,需要在pom.xml加入下面程式碼

  org.springframework.session spring-session-data-redis 1.3.1.release pom 
登入後複製

如果不是maven項目,你需要加入下面這些jar包。

nginx+redis怎麼實現session共享

2)寫redis.properties,程式碼如下

redis_isopen:yes #主机地址 redis_hostname=xxx.xxx.xxx.xxx #端口 redis_port=6379 #密码 redis_password=xxxxxxxx #连接超时时间 redis_timeout=200000 redis_maxidle:300 redis_maxactive:600 redis_maxwait:100000 redis_testonborrow:true
登入後複製

基本上與我們配置資料庫的連接語句類似。

3)寫spring-redis.xml設定文件,這個文件配置關於redis的一些基本資訊。

                   
登入後複製

4)在application.xml(spring的主設定檔)需要加入redis.properties設定檔的掃描,如下。

    /web-inf/classes/redis.properties   
登入後複製

5)在主設定檔中引入spring-redis.xml,如下。

登入後複製

6)在web.xml中,加入關於session的過濾器,只有這樣session才會被redis操縱。

 springsessionrepositoryfilter org.springframework.web.filter.delegatingfilterproxy   springsessionrepositoryfilter /* 
登入後複製

這樣以後,我們就實現了redis對session的管理。

7)我們可以安裝一個redis的客戶端來查看裡面的數據,叫做redis desktop manager。如下圖,很好用,可以看到redis資料庫中的資料。

nginx+redis怎麼實現session共享

ps.再退出的時候,需要這樣寫才不會出錯。 (ssh專案)

public string yipinexit(){ iteratorkeys=session.keyset().iterator(); while(keys.hasnext()){ string key=keys.next(); session.remove(key); } return "yipinexit"; }
登入後複製

以上是nginx+redis怎麼實現session共享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!