cache / frontend / prod / test中的会话文件

时间:2011-11-08 01:42:19

标签: symfony1 symfony-1.4

我不需要会话,也不需要在我的应用程序中缓存输出,但会话文件是在cache / 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

这些文件的内容如下:a:5:{s:31:“symfony / user / sfUser / lastRequest”; i:1320407937; s:33:“symfony / user / sfUser / authenticated”; b :0; S:31: “symfony的/用户/ sfUser /凭证”;一个:0:{} S:30: “symfony的/用户/ sfUser /属性”;一个:0:{} S:27:“的symfony /用户/ sfUser /文化 “S:2:” EN“;}

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

1 个答案:

答案 0 :(得分:3)

在您的factories.yml中,您有此配置:

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

这意味着:“在test环境中,保存所有会话(使用指定路径中的sfSessionTestStorage)。 如果在test环境中不需要任何会话存储,请将class设置为sfNoStorage。您可以离开param部分,因为sfNoStorage提供商没有任何设置。

如果您的整个应用程序中不需要任何会话,则可以删除test:下的部分,并配置all:下的所有内容。 (您是否知道您已经在此块下分配了相同的sfSessionTestStorage?从性能的角度来看,您不应该使用sfSessionTestStorage太多......)