Apache-Fehler mit mod_wsgi

Django, Flask, Bottle, WSGI, CGI…
Antworten
Benutzeravatar
Käptn Haddock
User
Beiträge: 169
Registriert: Freitag 24. März 2006, 14:27

Hallo zusammen!

Seit gestern tritt folgender Fehler auf, wenn ich versuche auf den Apache mit mod_wsgi zu starten:

Code: Alles auswählen

etc/init.d/apache2 start
Starting httpd2 (prefork) httpd2-prefork: Syntax error on line 113 of /etc/apache2/httpd.conf: Syntax error on line 35 of /etc/apache2/sysconfig.d/loadmodule.conf: Cannot load /usr/lib64/apache2/mod_wsgi.so into server: /usr/lib64/apache2/mod_wsgi.so: undefined symbol: Py_Py3kWarningFlag

The command line was:
/usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf -DSSL
Apache version ist 2.3, wsgi ist 3.3, python-Version ist 2.6, System ist openSuse 11.3. Alles ist aus Paketen bzw dem Buildservice installiert, allso nix händisch zusammengelötet.
Wenn ich auf das Laden von mod_wsgi verzichte, kommen die zu erwartenden Fehler über die nun unbekannten Direktiven, scheint also dann zu funktionieren.
Komisch ist, das ging schon bisher und ist jetzt neu. In den üblichen Log find ich keinen Hinweis. Kann mir jemand sagen wo ich da suchen muß oder was das ist?
Ich hatte die letzten Tage zwar etwas experimentiert, was aber mit der Apache-Konfiguration nichts zu tun hatte und eigentlich auch wieder vollständig entfernt ist(was jetzt aber nix heissen will;)).

Grüssle Uwe

EDIT: Ok. Ich komm dem näher: Wenn ich auf der Konsole den Python-Interpreter starte, zeigt er mir die Version 2.4.4. :shock:
Das ist die, die die Zope-Umgebung auf dem alten Server nutzt, den ich erfolglos versucht habe dahin zu migrieren. Dies sollte allerdings auschliesslich unter /user/local/... sein, und sollte vollständig wieder entfernt worden sein. Anscheinend jedoch nicht, Frage: wo kann sich hier noch ein Verweis auf ein altes Python verstecken? In /usr/local/libs etc finden sich nur die Pakete, die per easy_install installiert wurden. Unter /usr/libs64/ sind nur die 2.6er libs zu finden. *rätsel*

Gruß Uwe
---------------------------------
have a lot of fun!
Benutzeravatar
sparrow
User
Beiträge: 4164
Registriert: Freitag 17. April 2009, 10:28

Ich weiß nicht wie fit du auf Unix-Konsolen bist. which python zeigt dir welche Datei durch den Aufruf von 'python' aufgerufen wird. mit ls -la /die/gefundene/datei findest du womöglich einen Link auf den Interpreter der dir da quer kommt.


Gruß
sparrow
Benutzeravatar
Käptn Haddock
User
Beiträge: 169
Registriert: Freitag 24. März 2006, 14:27

Ok. Ist gelöst. Ich hab zwar keine Ahnung wie und warum, aber anscheinend hat die Zope-Instanz beim Hin-und Herkopieren das Python2.6 in /usr/[bin|lib]/... massakriert. Wie gesagt, eigentlich fand die Aktion vollständig in /usr/local/... statt.
Ein beherztes Update über Yast hat das ganze wieder ins Lot gebracht.

Ein etwas ratloses Danke an alle!

Gruß Uwe
---------------------------------
have a lot of fun!
Antworten