2016-08-20 1 views
0

Fail-Code:Python Tornado Webdienst Cron Neustart Wie?

root = os.path.dirname(__file__) 
static_application = tornado.web.Application([ 
    (r"/(.*)", tornado.web.StaticFileHandler, 
    {"path": root, "default_filename": "Example.html"}) 
]) 

if __name__ == "__main__": 
    print "Starting Server..." 
    static_application.listen(8080) 
    tornado.ioloop.IOLoop.instance().start() 

Ausfallen iptables:

Chain PREROUTING (policy ACCEPT) 
num target  prot opt source    destination   
1 REDIRECT tcp -- 0.0.0.0/0   0.0.0.0/0   tcp dpt:80 redir ports 8080 

Ausfallen html:

<!DOCTYPE HTML> 
<html> 
    <head> 
    <link href='StyleFile0.css'  rel='stylesheet' type='text/css' /> 
    <link href='StyleFile1.css'  rel='stylesheet' type='text/css' /> 

    <script src='ScriptFile0.js' type='text/javascript'> </script> 
    <script src='ScriptFile1.js' type='text/javascript'> </script> 

Ausfallen Cron:

0 * * * * cd /home/maindude/CodeHome && timeout -k 59m 59m python Process_TornadoService.py 

Ausfallen Js .css- Browser-Konsole " BEKOMMEN " 'S:

ScriptGetFail


So habe ich herausgefunden, wie man eine grundlegende Tornado Web-Service-Host.

Ich spawn einen Amazon-Server und schmeißt es dort, alles funktioniert super.

Dann möchte ich den Dienst sterben und jede Stunde neu starten.

Wenn ich Host auf Port 80 -> Ich brauche sudo Berechtigungen Dienst zu starten, so cron

schlägt fehl Wenn ich den Dienst Host auf Port 8080 -> Ich habe iptables

verwenden, wenn ich iptables verwenden - > Meine Skriptabhängigkeiten in HTML scheinen auf mysteriöse Weise nicht verfügbar zu sein.


Was ist die richtige Kombination aus Python, Tornados, html, cron, iptables, dies zu beheben und einen Tornado Service erhalten zu jeder Stunde sterben und neu starten?

EDIT:

Alles über funktioniert gut, dies zu erreichen.

+0

Ich bezweifle, dass es möglich wäre, das ohne irgendwelche Ausfälle zu tun. Warum deponieren Sie nicht mit 'uwsgi'? Etwas passender für die Produktions-/Staging-Umgebung? –

+0

Ich muss verrückt sein, denn heute morgen scheint alles zu funktionieren und ich habe nichts geändert –

+0

Ich starte den Server jetzt neu, um zu überprüfen - wenn es funktioniert, werde ich meine eigene Frage beantworten –

Antwort

0

Ok - so stellt sich heraus -> Ich war nicht geduldig genug ...

Der obige Code, cron, HTML, JavaScript und iptables alle Arbeiten fehlerlos einen Neustart des Servers mit Tornado auf Port 8080 zu erreichen, auf ein Amazon Web Server.

Epische Feier folgt