是否可以使用MongoDB在Symfony 2中存儲會話?如果是這樣,怎麼樣?我可以使用MongoDB在Symfony 2中存儲會話嗎?
回答
我已經完成了與Mandango,但它應該很容易轉換使用例如Doctrine的MongoDB ODM或類似。我開了一個頭,但還沒有經過測試,我相當肯定它應該是不同的傳遞到蒙戈實例;-)我添加了佔位符或示例代碼酌情如:
public function __construct(\Mongo $con, ...)
我相當肯定會需要改變:-)
代碼是在Github上https://github.com/richsage/Symfony2-MongoDB-session-storage - PR值得歡迎,當你得到它的工作!
本質上,我擴展了NativeSessionStorage類,並調整了各種方法來處理插入,檢索和更新適當的Mongo數據庫中的會話記錄。該類需要配置爲服務,並添加適當的依賴關係,然後將此服務傳遞給會話配置。 Et瞧:-)
哇謝謝,我希望我能理解代碼。我回家時會查看它。 – HappyDeveloper
只因爲我認爲這個問題沒有真正的答案。在Symfony 2.1中,現在可以使用HttpFoundation組件中包含的MongoDbSessionHandler將會話數據存儲在MongoDB中。
config.yml的主要配置是這樣的:
session.handler.mongo:
class: Symfony\Component\HttpFoundation\Session\Storage\Handler\MongoDbSessionHandler
arguments: [@mongo, %mongo.session.options%]
mongo.connection:
class: MongoDoctrine\MongoDB\Connection
factory_service: doctrine.odm.mongodb.document_manager
factory_method: getConnection
calls:
- [initialize, []]
mongo:
class: Mongo
factory_service: mongo.connection
factory_method: getMongo
mongo.session.options:
database: app_session
collection: session
framework:
session:
handler_id: session.handler.mongo
在這裏閱讀更多:http://blog.servergrove.com/2012/11/05/storing-sessions-in-mongodb-with-symfony2/
問題是,這解決了這個問題,但我很想添加一個小小的評論:session.handler.mongo,mongo.connection和mongo應該放在服務部分,而mongo.session.options放在參數部分 –
- 1. Symfony 2:使用MongoDB作爲會話存儲
- 2. 在會話中存儲對象Symfony 2
- 3. 我可以在會話存儲中使用parseInt嗎?
- 4. 使用Silex在MongoDB中存儲會話
- 5. 本地和會話存儲可以在html 4中使用嗎?
- 6. 我可以在會話變量中存儲腳本字典嗎?
- 7. 我可以在Coldfusion會話變量中存儲結構嗎?
- 8. 我們可以在angularjs中使用會話和本地存儲嗎?
- 9. nodejs。什麼庫我應該使用會話存儲在MongoDB中
- 10. 登錄會話cookie存儲在Symfony中?
- 11. 我們可以使用MongoDB進行臨時存儲嗎?
- 12. asp.net你可以混合使用Cookie cookie會話存儲的會話數據嗎?
- 13. 我可以在MongoDB中存儲關係數據庫結構嗎
- 14. 我可以在Meteor的MongoDB中存儲JavaScript Map對象嗎?
- 15. 我可以更改會話存儲的根目錄嗎?
- 16. JNDI DB連接可以存儲在會話中嗎?
- 17. 可以在會話中存儲大量的數據嗎?
- 18. ColdFusion會話可以存儲在dynamoDB中嗎?
- 19. 將會話ID存儲在localStorage中可以嗎?
- 20. 我可以使用專用(單獨的)羣集進行appfabric會話存儲嗎?
- 21. 我可以使用cassandra(2.0.3)作爲php會話存儲(例如vs vs redis)嗎?
- 22. 我可以使用Grails會話來存儲整個域對象嗎?
- 23. 我可以使用HttpContext.Application而不是Session來存儲會話特定數據嗎?
- 24. 我可以使用會話令牌代替會話嗎?
- 25. Magento可以在緩存鍵中使用會話變量嗎?
- 26. 我可以在RSpec中存儲STDERR嗎?
- 27. 我可以在Smart Lock中存儲電話號碼嗎?
- 28. 我可以在會話中存儲xmlDocument對象嗎?如何執行seralization?
- 29. 可以在Ruby on Rails中將登錄用戶存儲在會話中嗎?
- 30. Zend 2在會話中存儲值
你的出發點都可以在這裏:http://php.net/manual/en/function.session -set-save-handler.php –
@ItayMoav這與symfony 2有什麼關係? sf2會議使用它嗎? – HappyDeveloper
我寫的這只是一個起點。我很確定引擎蓋下的Symphiny也使用$ _SESSION。 –