На этот вопрос уже есть ответ здесь:
У меня есть проект CakePHP, работающий в CentOS VirtualBox. Веб-сайт обслуживается Apache 2.2.15.
В корневой папке документа находятся файлы JS. Казалось, что Apache обслуживает их файл.
Но после того, как я отредактирую файл JS, Apache будет обслуживать старый файл. Он изменит размер старого файла, чтобы он соответствовал размеру нового файла, и будет обслуживать измененный старый файл:
�
к старому файлу и выдаст результат. Перезапуск Apache не решает проблему.
Я нашел единственный способ заставить Apache обслуживать текущий файл - это переместить файл в другое место. Тогда CakePHP отобразит причудливую страницу 404. Затем я перемещаю файл обратно, и Apache отображает файл в его текущем состоянии.
Но i2.2.15t заморозит файл в этом состоянии, и после повторного изменения файла мне придется повторить трюк снова.
Журналы Apache чистые, в файле журнала доступа отображается следующее:
172.28.128.1 - - [12 / июл / 2014: 07: 42: 13 -0400] "GET /assets/js/compiled/editable_group.js HTTP / 1.1" 200 903
В чем причина проблемы и как мне решить?
PS Я буду рад предоставить любые подробности, логи, конфиги и т. д. Просто скажите мне, что вы хотите увидеть.
Хорошо, нашел ответ в этом вопросе:
Apache на CentOS 5.9 VM неправильно обслуживает модифицированные файлы
Решение - включить EnableSendfile off
в раздел <директория>
в конфигурационном файле Apache.