在Symfony 5中清除缓存

问题描述

如何清除Symfony 5中的缓存?

https://symfony.com/doc/current/cache.html#clearing-the-cache的官方文档说,我们应该使用PHP bin/console cache:pool:clear cache.global_clearer命令。但这并不能清除缓存,因为我被困了20分钟,思考为什么不刷新某些文件

然后我以旧的方式使用PHP bin/console cache:clear --env prod,但是这总是会破坏权限,因此每次都必须运行sudo chmod 777 -R var/cache

我在Centos7上。

解决方法

您用于清除缓存的用户是否与php用户相同?

您的chmod 777之所以有效,是因为最后一个7。这不是最佳做法。

以下是Apache和PHP-FPM的一个示例:

[php-fpm@myserver myproject]$ ll var/cache/prod/
total 756
-rw-rw----   1 php-fpm www   5688  2 déc.  15:33 annotations.map
-rw-rw----   1 php-fpm www 529129  2 déc.  15:33 annotations.php
drwxrwx---   2 php-fpm www   4096  2 déc.  15:33 ContainerEKUR7PE
drwxrwx---   3 php-fpm www   4096  2 déc.  15:33 doctrine
drwxrwx---  11 php-fpm www   4096  2 déc.  15:33 pools
-rw-rw----   1 php-fpm www    100  2 déc.  15:33 serialization.php
-rw-rw----   1 php-fpm www    761  2 déc.  15:33 srcApp_KernelProdContainer.php
-rw-rw----   1 php-fpm www      0  2 déc.  15:33 srcApp_KernelProdContainer.php.lock
-rw-rw----   1 php-fpm www 103727  2 déc.  15:33 srcApp_KernelProdContainer.php.meta
-rw-rw----   1 php-fpm www  34142  2 déc.  15:33 srcApp_KernelProdContainer.preload.php
drwxrwx---   2 php-fpm www   4096  2 déc.  15:33 translations
drwxrwx--- 114 php-fpm www   4096  2 déc.  15:33 twig
-rw-rw----   1 php-fpm www  12520  2 déc.  15:33 UrlGenerator.php
-rw-rw----   1 php-fpm www   5438  2 déc.  15:33 UrlGenerator.php.meta
-rw-rw----   1 php-fpm www  14979  2 déc.  15:33 UrlMatcher.php
-rw-rw----   1 php-fpm www   5438  2 déc.  15:33 UrlMatcher.php.meta
-rw-rw----   1 php-fpm www   5968  2 déc.  15:33 validation.php
-rw-rw----   1 php-fpm www   3240  2 déc.  15:33 webpack_encore.cache.php

这是我的umask:

[php-fpm@myserver myproject]$ umask
0007

这是我的用户组:

[php-fpm@myserver myproject]$ id
uid=996(php-fpm) gid=1000(www) groupes=1000(www),994(php-fpm)

我的服务器也是CentOS 7。