When I make modifications to my .tpl.php file, I assure that changes are "reloaded" by executing "drush cc all".

But when I change my template.php file, the only way I have to see the output of my new code, such as adding a simple dpm($form) statement, is by restarting apache.

I've tried:

  • drush cc all
  • Devel module -> Clear cache.
  • Configuration -> Performance -> Clear all caches.
  • Check that in Configuration -> Performance -> CACHING -> disabled.
  • Clear browser cache.
  • Test it in a different browser.

But the changes only appear when I issue /etc/init.d/httpd restart.

Any idea of why?

  • 3
    You probably have some sort of apache-/server-level caching going on. mod_cache maybe? reverse proxy? can't really say from here
    – Clive
    Feb 28, 2014 at 15:47
  • 2
    Also check if apc.stat=0
    – mpdonadio
    Feb 28, 2014 at 16:21

1 Answer 1


Thanks to Clive and MPD, that pointed to the answer.

It was because of APC.

I've installed the module apc_admin, which allows to access the APC interface (apc.php) from within drupal (Configuration » Development » Performance » APC). That includes the "Reset APC cache" button. Just by pressing it, the changes in my template will show up.

Hope this helps also other users.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.