Hallo
Folgendes mir nicht erklärbares Problem/Phänomen:
Ich hab über eine längere Zeit einen Webserver (host='10.0.2.108', port=8080) auf meinem Pi laufen lassen. Nun habe ich den Prozess gestoppt und wollte den Server neustarten über den Port 8089. Nun wird mir folgendes angezeigt:
Display Spoiler
root@raspberrypi:/home/pi/Python/Bottle# python app.py
Bottle v0.12.7 server starting up (using GeventServer())...
Listening on http://10.0.2.108:8080/
Hit Ctrl-C to quit.
^CKeyboardInterrupt
Bottle v0.12.7 server starting up (using WSGIRefServer())...
Listening on http://10.0.2.108:8089/
Hit Ctrl-C to quit.
Bottle v0.12.7 server starting up (using GeventServer())...
Listening on http://10.0.2.108:8080/
Hit Ctrl-C to quit.
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/bottle.py", line 3110, in run
server.run(app)
File "/usr/local/lib/python2.7/dist-packages/bottle.py", line 2768, in run
srv = make_server(self.host, self.port, app, server_cls, handler_cls)
File "/usr/lib/python2.7/wsgiref/simple_server.py", line 144, in make_server
server = server_class((host, port), handler_class)
File "/usr/lib/python2.7/SocketServer.py", line 419, in __init__
self.server_bind()
File "/usr/lib/python2.7/wsgiref/simple_server.py", line 48, in server_bind
HTTPServer.server_bind(self)
File "/usr/lib/python2.7/BaseHTTPServer.py", line 108, in server_bind
SocketServer.TCPServer.server_bind(self)
File "/usr/lib/python2.7/SocketServer.py", line 430, in server_bind
self.socket.bind(self.server_address)
File "<string>", line 1, in bind
error: [Errno 98] Address already in use
^CKeyboardInterrupt
Exception KeyError: KeyError(3066845744L,) in <module 'threading' from '/usr/lib/python2.7/threading.pyc'> ignored
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 552, in __bootstrap_inner
self.run()
File "/usr/local/lib/python2.7/dist-packages/bottle.py", line 3154, in run
if not exists(path) or mtime(path) > lmtime:
KeyboardInterrupt
Display More
Ich beende das Programm und es startet automatisch neu mit dem in der Datei festgelegtem Port. Sobald ich es wieder beende startet es sich wiederum automatisch neu mit dem Port 8080 und erst nach erneutem Beenden scheint es auch wirklich beendet zu sein. Aber:
root@raspberrypi:/home/pi/Python/Bottle# ps aux | grep python
root 11120 14.9 2.8 25360 11064 pts/0 Sl 08:32 0:02 /usr/bin/python app.py
Zeigt mir an, dass es doch nicht beendet ist :s Nun bin ich völlig ratlos...
Edit:
Ich hatte das Skript mal in /etc/rc.local eingetragen zum automatisch starten. Hab es aber dort wieder gelöscht. Könnte sich da irgendwo irgendwas eingenistet haben?