Symfony需要缓存:请经常清除

时间:2020-02-22 12:08:07

标签: symfony

三天前我开始学习Symfony,但遇到了缓存或其他问题。

第一个我有RegisterController

public function index(Request $request, UserPasswordEncoderInterface $encoder)
{
    $user = new User();

    $form = $this->createForm(UserType::class, $user);

    $form->handleRequest($request);

    if ($form->isSubmitted() && $form->isValid()){
        $user = $form->getData();

        $user->setPassword($encoder->encodePassword($user, $user->getPassword()));

        $entityManager = $this->getDoctrine()->getManager();
        $entityManager->persist($user);
        $entityManager->flush();
    }

    return $this->render('register/index.html.twig', [
        'form' => $form->createView(),
    ]);
}

工作正常。但是当我在

之前写的时候
$user = new User();

此行$this->denyAccessUnlessGranted("ROLE_ADMIN");-我可以访问“拒绝访问”,因为我还有其他角色。

但是当我删除此行代码$this->denyAccessUnlessGranted("ROLE_ADMIN");并刷新页面时,我看到了屏幕:

此页面无效 symfony.local没有发送任何数据。 ERR_EMPTY_RESPONSE

,我再也无法访问此页面。我必须清除缓存:

php bin/console cache:clear

或重新启动apache。

您能告诉我怎么回事以及如何解决吗?

2 个答案:

答案 0 :(得分:0)

我在使用PHP版本7.4.0和php fpm时遇到问题。我确实将php更新到7.4.3,现在可以了。感谢您的帮助。

答案 1 :(得分:-1)

可以为不同的environments配置Symfony,并且这些环境可以更改Symfony的行为。如果您在生产环境中运行,Symfony将执行大量缓存以提高向访客提供页面的速度。如果您处于DEV模式,则每次运行它都会重新加载大多数代码更改。

但是,Web服务器/ PHP也可以缓存文件。如果您在Symfony中处于DEV模式,并且仍然有此问题,请检查php.ini文件中的缓存设置。

相关问题