I ran into some caching issue with php/apache on ubuntu server. I use AWS CodeDeploy to replace the whole /var/www/html with the git repo, code is updated in EC2, but browser does not reflect the change after deployment. However if I went into the file (let's say index.tpl) and add a random letter, I could then see the change. Also it works when I modify the target file and update only it via sftp client like filezilla. What happened?
I figured it out. Culprit was Smarty. Force compiling needs to be enabled.