Apache, не служащий изменениям в файле, обновляется gulpjs

Мне настраивали CentOS 6.5 VM с помощью Apache HTTPD 2.2 в качестве веб-сервера, и я использую GulpJS для своего процесса сборки. То, когда я обновляю файл CSS выполнения процесса сборки GulpJS хорошо и если я смотрю на файл на VM I, видит обновления, однако при обслуживании через Apache HTTPD файл не имеет изменений в нем. Если я редактирую файл с помощью vi, не вношу изменений и просто сохраняю его снова Apache, HTTPD затем берет изменения и производит корректный файл.

Я отключил mod_cache модуль (например, прокомментировал директиву LoadModule для него), поскольку я думал, что это могло бы быть причиной, но это не имело никакого значения.

Кто-либо еще столкнулся с этой проблемой и знает, как зафиксировать ее?

[ОБНОВЛЕНИЕ] - Просто рассмотрение httpd доступа регистрируется, и я вижу, что файл подается httpd каждый раз, прежде и после обновлений, но ничто не изменяется:

192.168.56.1 - - [22/Jun/2014:09:27:42 +0100] "GET /includes/min/stylesheet.min.css HTTP/1.1" 200 135882 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36"
192.168.56.1 - - [22/Jun/2014:09:29:22 +0100] "GET /includes/min/stylesheet.min.css HTTP/1.1" 200 135878 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36"

Кроме длины файла. Это предположило бы, что httpd видит обновление файла, но это не обновляет в браузере. Я попробовал несколько различных браузеров, очистив кэши браузера, и т.д. но пока я не редактирую файл на сервере с помощью vi и сохраняю его снова, никакой браузер не загрузит новую версию файла, который возвращает меня размышлению httpd, все еще служит неверной версии файла. Таким образом нечетный.

[ОБНОВИТЕ 2] - я полагаю, что это могло бы быть чем-то, чтобы сделать с VirtualBox и совместно используемыми папками. Файлы для сайта находятся на хосте (Mac OS X 10.9.3) и скомпилированы там использующий NodeJS. Они компилируются в папку, которая совместно используется с гостем ОС (CentOS) использование совместно используемых папок VBOX. Если я смотрю на файл в каталоге через консоль, я вижу:

-rwxrwxrwx. 1 root root 135881 Jun 23  2014 stylesheet.min.css

Как Вы видите, вместо нормального Месяца, Дня и Времени для файла, он имеет Месяц, День и год вместо этого. Это выглядит неуместным мне, но я понятия не имею, что это означает или если это значительно.

3
задан 24 June 2014 в 01:18
1 ответ

Найдено решение для этого. Это была проблема с HTTPD кэшем Apache. Я вернул модули mod_cache и mod_disk_cache обратно и установил следующую директиву:

CacheDisable /

Это решило проблему. Не уверен, почему просто не загрузка кэш-модулей не дала такого же эффекта.

UPDATE: Хотя это и казалось решением проблемы некоторое время, но это не является реальным решением. На самом деле проблема оказалась в том, что машина работает на VirtualBox, а файлы, которые она обслуживает, находятся на хостовой машине и монтируются на гостевой с помощью vboxsf. Проблема и ее решение объясняется в следующем посте блога:

http://www.frandieguez.com/blog/2013/05/solving-caching-issues-with-vagrant-on-vboxsf/

3
ответ дан 3 December 2019 в 06:34

Теги

Похожие вопросы