Frage

ich meine erste App zur Arbeit in uwsgi mit Cherokee vor kurzem bekommt. Früher habe ich den folgenden Code genommen von der uwsgi docs :

def application(environ, start_response):
  start_response('200 OK', [('Content-Type', 'text/plain')])
  yield 'Hello World\n'

Die Seite richtig liest Hello World. Wenn ich ändern, dass der Text zu New Thing und erfrischen, ändert sich nichts. Was bin ich vergessen?

Was habe ich versucht:

  1. Clearing-Browser-History und Cache
  2. Stoppen und Starten Cherokee


Edit: Um zu klären, ich Hello World zu New Thing im Python-Code zu ändern. Dann hör ich Cherokee, erfrischen, und ich offensichtlich eine Fehlermeldung angezeigt. Ich Neustart Cherokee, erfrischen, und ich sehe Hello World.

War es hilfreich?

Lösung

So die Art und Weise dies funktioniert, ist, dass Cherokee für Sie eine laufende uwsgi Instanz im Hintergrund verwaltet. Was ich bisher bemerkt, und ich habe bei nicht fertig suchen, ist, dass, wenn Sie nach unten Cherokee schließen es nicht auch scheint herunterzufahren uwsgi Instanzen laufen.

Versuchen Sie diese:

sudo service cherokee start
ps aux | grep uwsgi 
# you should see nothing from this ps command

# now hit your web app
sudo service cherokee stop
ps aux | grep uwsgi
# you should see the instance of uwsgi that cherokee started

So Ihr App-Code tatsächlich über uwsgi laufen und Cherokee ist mehr wie ein Proxy-Server. Um den App-Code zu aktualisieren, müssen Sie das HUP Signal an uwsgi schicken, nicht Cherkee.

sudo killall -HUP uwsgi

Das sollte uwsgi führen zu aktualisieren, um Ihre Anwendung ändert sich unabhängig von Cherokee.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top