Non sono sicuro al 100% se la mia risposta è corretta ma in PROJECT/lib/symfony/cache/sfCacheFile.class.php
c'è un metodo: sfCacheFile::getFilePath()
che restituisce un percorso a un file. Sembra che non ci sia alcuna protezione contro le limitazioni del filesystem ext2
.
Ma c'è una soluzione molto semplice - ignorare tale classe:
In PROJECT/apps/APP/config/factories.yml
impostare la propria classe di cache:
default:
# Others factories (if any)
view_cache:
class: myOwnFileCache
param:
automatic_cleaning_factor: 0
cache_dir: %SF_TEMPLATE_CACHE_DIR%
lifetime: 86400
prefix: %SF_APP_DIR%/template
Creare ora quella classe e assicurarsi che si estende sfFileCache
e overrides getFilePath()
}
Cancella cache: ./symfony cc
Ora è necessario 32000 chiavi della cache che inizia con la stessa identica due lettere/cifre per schiacciare il filesystem.
Questa è l'idea; D grazie – belaz