2012-09-27 40 views
1

當我從symfony 2.0遷移到symfony 2.1時,會話出現問題。Symfony 2.1會話本地值和主值(在phpinfo上閱讀)

我使用simplesamlphp進行身份驗證,並且在symfony 2.0上一切正常。

在Symfony 2.1上是不行的。我檢查了他們之間的個體差異上phpinfo->會議,這是我得到的:

      symfony2.1   symfony 2.0  Master Value 
session.save_handler   user    files    files 

session.save_path  (..)/symproject/app (..)/wamp/tmp  (..)/wamp/tmp 
         /cache/dev/sessions 

此值必須等於爲php.ini,因爲simplesaml需要它!

我可以設置config.yml的framework:session:save_path財產,但我認爲這不是因爲保存路徑一個很好的做法可能會因如果我的本地開發機器或不被IM diferent(我有我的項目上GIT)。

關於save_handler我找不到一個waay在config.yml中指定它。我堅持「用戶」在這個?

這個symfony版本正在發生什麼?在symfony 2.0中,這個功能已經不復存在了!請幫忙。這方面沒有像樣的文件(相信我看過!!)。

回答

3

終於我明白了!

Symfony 2.1默認具有Native *驅動程序。這覆蓋了php.ini上的配置。

如果要使用php-ini配置,則必須將null傳遞給處理器arg的NativeSessionStorage構造函數。

這是通過將上config.yml以下配置完成:對這個決定的

framework: 
    session: 
     handler_id: ~ 

更多信息可以讀取here

symfony文檔和升級手冊中缺少此信息。