1

I've got a CakePHP project running in a CentOS VirtualBox. The website is served with Apache 2.2.15.

There are JS files in the document root folder. Apache seemed to serve them file.

But after i edit a JS file, Apache would serve the old file. It will modify the size of the old file to match the size of the new file and serve the modified old file:

  • If the new file is smaller than the old file, it would cut the old file and serve the result;
  • If the new file is larger than the old file, it would append symbols to the old file and serve the result.

Restarting Apache does not resolve the issue.

The only way i found to make Apache serve the current file is to move the file to another location. Then CakePHP will display a fancy 404 page. Then i move the file back, and Apache displays the file in it's current state.

But i2.2.15t will freeze the file in that state and after modifying the file again i will have to repeat the trick again.

Apache logs are clean, the access log file displays this:

172.28.128.1 - - [12/Jul/2014:07:42:13 -0400] "GET /assets/js/compiled/editable_group.js HTTP/1.1" 200 903

What is the reason of the problem and how do i resolve it?

PS I will be happy to provide any details, logs, configs, etc. Just tell me what you want to see.

1 Answers1

2

Okay, found the answer in this question:

Apache on CentOS 5.9 VM serves modified files incorrectly

The solution is to include EnableSendfile off into the <directory> section in the Apache config.