[英]Symfony2 - relative path in cache file
我與Symfony2合作。 我想在將緩存的文件放入服務器(不是同一台機器)之前准備它們。
問題在於內容文件,因為其中一些包含資源的絕對路徑,例如:
file: ./dev/classes.php.meta ,
file: ./dev/templates.php,
file: ./dev/assetic/routing.yml
'WebProfilerBundle:Profiler:toolbar_item.html.twig' => '/var/www/symfony/vendor/symfony/symfony/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_item.html.twig',
有什么辦法可以將其更改為相對路徑?
運行TemplatePathsCacheWarmer
,將其配置為使用kernel.cache_dir
。 如果您知道已安裝應用程序的路徑,則可以通過運行帶有環境變量的 cache:warmup
替換參數來覆蓋此路徑:
SYMFONY__kernel__cache_dir=/srv/myapp/app/cache php app/console cache:warmup
我在這里嘗試使用相對路徑的成功有限(可以傳遞"../"
,但是我不確定100%的模板與之相對)。 當您具有可變的應用程序目錄路徑(例如帶有時間戳的發行文件夾)時,這將非常棘手。
最好的方法是使用cache命令中的warmup
過程。
只需運行命令即可清除緩存,而無需傳遞no-warmup
選項:
php app/console cache:clear --env=prod --no-debug
如果使用no-warmup
選項或手動刪除cache
文件夾內容,則需要運行warmup
命令:
php app/console cache:warmup --env=prod
http://symfony.com/doc/master/cookbook/deployment-tools.html#c-clear-your-symfony-cache
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.