Потому что "If you want to share PHP-generated files between Apache and command-line scripts then you will need to create your own PHP-writable directory for the scripts to use, and implement your own garbage collection and security" -- это жопа. Борцуны за безопасность лишили меня /tmp. Скоро компьютер выключить заставят. Как бы чего не вышло.
Непонятно при чем здесь кеш. "share between Apache and command-line" — в простейшем случае это может быть один на всех аккаунт www-data, которому разрешили shell. Решение годное для локалхоста. Чуть посложнее иметь общую группу (www-data) на веб- и консольного пользователя и удостовериться что новые файлы получают права g+w. То есть настроить umask обоим пользователям. Что касается папки для временных файлов, то не надо что-то складывать вне проекта чтобы не усложнять обслуживание. А внутри проекта шарить на уровне группы пользователей. То есть прописывать не /tmp и не $USERHOME/tmp, а $PROJECTROOT/storage/tmp типа того.
Я понял, заглавный пост не был вопросом. Это выплеснутая боль от груза неразрешимых проблем. --- Добавлено --- @Satger верю что ты опытный товарищь и тебя оскорбляют простые инструкции. Но подумай, не попал ли ты в ловушку XY.