coral-media / http-foundation

扩展 symfony/http-foundation 组件的组件

dev-main 2022-02-12 03:09 UTC

This package is auto-updated.

Last update: 2024-09-12 09:01:51 UTC


README

旨在覆盖和/或扩展在 Symfony 开发环境中 http-foundation 组件的功能。

安装和配置

使用 composer 安装此包。

composer require coral-media/http-foundation

有关进一步配置,请查看以下部分。

EncryptedSessionProxy

为我们的会话处理器提供会话加密。以下示例展示了如何使用 PdoSessionhandler 实现它。

安装后,将 services.yaml 配置如下

...
Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler:
    arguments:
        - '%env(resolve:DATABASE_URL)%'
session.handler.pdo:
    alias: 'Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler'

CoralMedia\Component\HttpFoundation\Session\Storage\Proxy\EncryptedSessionProxy:
    arguments:
        - '@session.handler.pdo'
        - '%env(resolve:SESSION_ENCRYPTION_KEY)%'
session.storage.proxy.encrypted:
    alias: 'CoralMedia\Component\HttpFoundation\Session\Storage\Proxy\EncryptedSessionProxy'
...

别忘了在 config/packages/framework.yaml 中添加你的配置

framework:
...
    session:
        handler_id: session.storage.proxy.encrypted
        cookie_secure: auto
        cookie_samesite: lax
        storage_factory_id: session.storage.factory.native
        save_path: '%kernel.cache_dir%/sessions'
...