2011-01-24 4 views
3

Я установил Django, Nginx и FastCGI на одном из моих серверов. Это мой сервер разработки, и у меня очень сложное время с кешированием. Каждый раз, когда я делаю изменения, я должен перезагрузить весь сервер, чтобы увидеть фактическое изменение. Перезагрузка процесса Nginx не помогла.Django, Nginx, проблема с кешированием FastCGI при изменении кода

Так что это может быть Django и/или FastCGI, выполняющие кеширование. Я также посмотрел параметры settings.py, и в Django нет кеширования.

Каков наилучший способ убедиться, что при изменении кода страницы кеширование автоматически сбрасывается? Ваша помощь очень ценится.

+0

Почему вы не используете встроенный сервер разработки? Для этого нужно, чтобы вы не перезапускались каждый раз. –

ответ

5

Если это не manage.py runserver, мы говорим о вас необходимо перезагрузить сервер, чтобы увидеть изменения кода, чтобы перезагрузить python и ваш код в память.

Только сервер django devlopment может обнаруживать изменения и перезагружать вас.

Если вы говорите, что вам необходимо перезагрузить машину , чтобы обновить код, вы должны посмотреть, как перезапустить процесс fastcgi.

http://docs.djangoproject.com/en/dev/howto/deployment/fastcgi/#stopping-the-fastcgi-daemon
http://docs.djangoproject.com/en/dev/howto/deployment/fastcgi/#restarting-the-spawned-server

Как лучший способ? Я разрабатываю на своей локальной машине, поэтому для меня сценарий развертывания гарантирует, что я получаю последнее обновление от контроля версий и перезагрузки. В противном случае я просто набираю arestart (с одной стороны, типичный псевдоним bash).

+0

Я попробую, и я дам вам знать, как это работает. – avatar

+0

+1 это почти наверняка проблема. Если это не так, убедитесь, что у вас нет неверных настроек etags, и они полностью обновляются на странице. –

+0

Yuji, так что вы используете тот же сценарий оболочки из 1-го канала? – avatar

Смежные вопросы