Проблема с nginX
кэширование произошло, когда я использовал ntpdate ntp.ubuntu.com
синхронизировать мои часы сервера.
Теперь, когда я запрашиваю путь http://www.example.com/project/create
Я получаю старый файл PHP, что я продолжал работать.
Я пытался установить sendfile
кому: off
в nginx.conf
и даже выключил кэширование в cloudFlare
для моего DNS, но усиления никакой успех.
Когда я изучил часть заголовка с curl -I http://www.example.com/project/create
Я имел ниже ответа:
HTTP/1.1 302 Moved Temporarily │
Server: nginx │
Date: Fri, 15 Aug 2014 10:51:38 GMT │
Content-Type: text/html │
Connection: keep-alive │
Set-Cookie: PHPSESSID=cihsfrq6aoat5baun8dem01go5; path=/ │
Expires: Thu, 19 Nov 1981 08:52:00 GMT │
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 │
Pragma: no-cache │
Location: http://www.example.com/site/login
Я не мог найти, что любая nginx папка кэша удалила. Я перезапустил nginX после всех тех изменений, но ничего не получил. Я не могу думать ни о какой другой причине, почему это происходит.
РЕДАКТИРОВАНИЕ 1:
Кажется этим, когда я использую ntpdate ntp.ubuntu.com
, это изменяет время сервера на 7:25
в то время как мое время 16
!? Модификации файла равняются теперь 16, старой дате, в то время как мое системное время является 7:25. Если я изменюсь, то мое время к 16 затем моим толкателям бросит ошибку и говорит, что данная метка времени истекает:
string(112) "Timestamp expired: Given timestamp (2014-08-15T20:06:20Z) not within 600s of server time (2014-08-15T11:39:59Z) "
В PHP может быть установлен кэш-модуль APC
. Самый простой способ заставить обновление кэша APC, это перезапустить демона PHP-FPM
.
Время кэширования строится по текущему системному времени. Ожидается, что скачки времени, подобные тем, что вы испытали, приведут к странному поведению. nginx
- всего лишь одна из нескольких программ, которые могут вести себя подобным образом. Эти проблемы в целом понятны, как только время нагоняет время.
Попробуйте запустить процесс демона ntp
, а не периодически запускать ntpdate
. Одно из преимуществ ntp перед ntpdate состоит в том, что при небольших настройках он не перескакивает, а перемещает часы. После синхронизации часов ntp будет опрашивать свои серверы примерно каждые 15 минут (1024 секунды).
Если вы знаете, что ваши часы значительно отключены, то вы можете вручную настроить часы с помощью небольших корректировок в течение длительного периода времени. Это может быть написано в сценарии и запущено как задание cron. Как только вы окажетесь в пределах минуты или около того от реального времени, тогда вы можете запустить своего ntp
демона.