2011-11-08 10 views
1

私のアプリケーションでは、セッションやキャッシュの出力は必要ありませんが、セッションファイルはcache/frontend/prod/testに作成されます。どのようにそれをオフにするには?キャッシュ/ frontend/prod/testのセッションファイル

cache/ 
└── frontend 
    ├── dev 
    │   ├── config 
    │   ├── i18n 
    │   └── template 
    └── prod 
     ├── config 
     │   ├── config_app.yml.php 
     │   ├── ... 
     │   └── modules_inapppurchasevalidation_config_security.yml.php 
     ├── i18n 
     ├── template 
     └── test 
      └── sessions 
       ├── 14c4d82c8934772e6450fa749f6901d3.session 
       ├── 19438fe227ad428f2ebcf9aefae222f9.session 
       ├── 1d24195a28026f623fd4bb48a39c6d37.session 
       ├── 287d5460dbff1fb1fe48b8ca4b4ac2d5.session 
       ├── 2a74fb0e218a965661286f3ac2e59dd3.session 
       ├── 2ad682cfbda63ce45288020d03df551f.session 
       ├── 43bb9a06ce37f8600d3ec53ae0f17373.session 
       ├── 53e1834564a25ab70fb7583094b99c53.session 
       ├── 632c81aaa893435ccd9d82ffd7970133.session 
       ├── 698b11253e8b17cec56d9c58938579bb.session 
       ├── 70a13c61da15e8a71d02634ecb0f5db1.session 
       ├── f3a0d8aff2dd49da763b7a5186502748.session 
       ├── f8a25a6a69d8bcedfffbdb2e469781c4.session 
       ├── fa639b23b103812d460d1fe57fe02785.session 
       ├── fa95efd3cb1563fe0cab1500ed803901.session 
       └── fdbd2255efc01d7f17ed1d3895a16bb8.session 

これらのファイルの内容は次のようである:5:{S:31: "symfonyの/ユーザ/のsfUser/lastRequest"; I:1320407937; S:33: "symfonyの/ユーザ/のsfUser/a:0:{} s:30: "symfony/user/sfUser/attributes"; a:0:{} s:27:symfony/user/sfUser/: "symfonyの/ユーザ/のsfUser /文化"; S:2: "エン";}

のfactories.yml:

prod: 
    logger: 
    class: sfAggregateLogger 
    param: 
     level: err 
     loggers: 
     sf_file_debug: 
      class: sfFileLogger 
      param: 
      level: err 
      file: %SF_LOG_DIR%/%SF_APP%_%SF_ENVIRONMENT%.log 
test: 
    storage: 
    class: sfSessionTestStorage 
    param: 
     session_path: %SF_TEST_CACHE_DIR%/sessions 
    response: 
    class: sfWebResponse 
    param: 
     send_http_headers: false 

    mailer: 
    param: 
     delivery_strategy: none 
dev: 
    mailer: 
    param: 
     delivery_strategy: none 
all: 
    routing: 
    class: sfPatternRouting 
    param: 
     generate_shortest_url:   true 
     extra_parameters_as_query_string: true 

    view_cache_manager: 
    class: sfViewCacheManager 
    param: 
     cache_key_use_vary_headers: true 
     cache_key_use_host_name: true 

    storage: 
    class: sfSessionTestStorage 
    param: 
     auto_start: false 
     session_path: %SF_TEST_CACHE_DIR%/sessions 

はsettings.ymlの:

prod: 
    .settings: 
    no_script_name:   true 
    logging_enabled:  true 
    cache:     false 
    etag:     false 
all: 
    .settings: 
    escaping_strategy:  true 
    escaping_method:  ESC_SPECIALCHARS 
    use_database:   true 
あなたの factories.ymlあなたが持っている。この構成では

答えて

3

意味
test: 
    storage: 
    class: sfSessionTestStorage 
    param: 
     session_path: %SF_TEST_CACHE_DIR%/sessions 

:「test環境の中で、(指定されたパスでsfSessionTestStorageを使用して)すべてのセッションを保存します。 test環境でセッション記憶域を必要としない場合は、クラスをsfNoStorageに設定してください。 sfNoStorageプロバイダには設定がないため、paramの部分をそのまま残すことができます。

アプリケーション全体でセッションが必要ない場合は、test:の下の部分を削除し、すべてをall:に設定することができます。 (このブロックの下に同じsfSessionTestStorageが割り当てられていることをご存知でしたか?パフォーマンスの観点からは、sfSessionTestStorageをあまり使用しないでください)...

+0

私は答えを見つけました。 sfNoStorageと共有して、すべての設定をすべて保存してくれてありがとう! –

関連する問題