2015-09-28 30 views
1

我正在更新symfony2网站,afeter控制器或小枝文件中的每个更新我运行“php应用程序/控制台缓存:清除”,网站停止工作5分钟,然后它的工作再次。在非常小的更新后,我清除了缓存,并且网站不想再运行,我有500个内部服务器错误,symfony的日志文件中没有条目,但这里是我在php日志中找到的:Symfony2:网站停止工作更清晰:缓存

[Thu Sep 24 08:10:05 2015] [error] [client 1.2.3.4] FastCGI: server "/run/fcgi-bin/www.mysite.com:80.fcgi" stderr: PHP message: PHP Warning: require_once(/var/www/mysite.com/app/cache/prod/jms_diextra/doctrine/EntityManager_5602df03afff5.php): failed to open stream: No such file or directory in /var/www/mysite.com/app/cache/prod/appProdProjectContainer.php on line 279 

[Thu Sep 24 08:10:05 2015] [error] [client 1.2.3.4] FastCGI: server "/run/fcgi-bin/www.mysite.com:80.fcgi" stderr: PHP message: PHP Fatal error: require_once(): Failed opening required '/var/www/mysite.com/app/cache/prod/jms_diextra/doctrine/EntityManager_5602df03afff5.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/mysite.com/app/cache/prod/appProdProjectContainer.php on line 279 

它似乎是实体问题,但我相信我没有实体更新。我甚至试图通过上传所有原始文件来回滚,但没有办法!

我不明白:

  1. 为什么我有每个缓存后等待5分钟:清楚了吗?
  2. 日志错误是什么意思?

非常感谢:)

回答

2

我遵循由tchap发布的网址中的说明。 我不知道为什么cache:clear抛出的错误,但我测试了这一点,它的工作原理:手动

  1. delele的/app/cache/prod/文件夹

  2. 运行:

    app/console cache:warmup 
    
6

它看起来像一个文件权限问题,你的cache目录(和/或您的logs目录)。

尝试chmod -R 777 app/cache app/logs并告诉我们你是否仍然有问题。

您还可以查看umask诀窍http://symfony.com/doc/current/book/installation.html#checking-symfony-application-configuration-and-setup这可能有助于您的情况。

+0

更好:确保你的服务器上的php进程在缓存文件夹上有写权限(以及有关日志)。 777可以在这种情况下调试 – Koalabaerchen

+0

是的,没错。 777是为您的本地安装。适当的权利和用户权限应该在生产实例中执行 – tchap

+0

'问题'是该网站现在没有任何操作,因此我无法尝试您的解决方案!但是当它发生故障时,我尝试了“chmod -R 777 app/cache”,但没有奏效。我想知道:如果这是一个正确的问题,为什么早期缓存:清除工作正常? – Sam