Chris2000SP
Anmeldungsdatum: 16. Dezember 2007
Beiträge: 98
Wohnort: Münster
|
Ich habe Baustelle/Mumble Server (Murmur) installieren durch gearbeitet, und jetzt steh ich for dem problem mit dem Webinterface.
Ich musste erst mal von dem "mumble-server-web" die dateien in /var/www rein kopieren, und jetzt bekomm ich den fehler:
Fatal error: Ice_ObjectPrx::ice_checkedCast() [<a href='function.Ice-ObjectPrx-ice-checkedCast'>function.Ice-ObjectPrx-ice-checkedCast</a>]: no Slice definition found for type ::Murmur::Meta in /var/www/mumble/weblist.php on line 12
Weiß einer woran das liegt? Installiert ist 1.1.7-2 MfG Chris2000SP
|
Kissaki
Anmeldungsdatum: 11. Mai 2008
Beiträge: 6
|
Ist das Interface in PHP?
Wenn ja, siehe http://mumble.sourceforge.net/ICE#Apache_and_PHP
Neben der PHP Erweiterung muss man in der php.ini den ice.slice Pfad angeben, und auf die murmur.ice zeigen. Wenn das nicht das Problem ist,
läuft dein Server über ICE?
Muss man in der Konfigurationsdatei von dbus auf ICE ändern, bevor das ICE Script funktioniert.
|
Chris2000SP
(Themenstarter)
Anmeldungsdatum: 16. Dezember 2007
Beiträge: 98
Wohnort: Münster
|
Jo danke, ich habe in zwischen selber alles hin bekommen. (http://mumble.nifares.net/mumbleviewer_v1.1-SVN-Default/trunk/mumbleviewer.php) Inzwischen habe ich wieder ein anderes Problem. Ich habe mir des Das Django anschauen wollen, bzw. Installieren wollen: http://mumble.sourceforge.net/Running_Murmur#Web-interfaces . Aber ich habe überhaubt kein plan von Django. Ich habe gehört das Django selbst ein Framework ist oder so ähnlich.
Ich komme mit den Anleitungen nicht weiter, da ich nicht weiß wie ich den Mumble-Django interface einbinde. Ich schreibe Später noch weiter
|
MistaGee
Anmeldungsdatum: 26. Juni 2008
Beiträge: 15
|
Hi, ich bin der Hauptentwickler von Mumble-Django, daher antworte ich dir mal. ☺ Ich habe in den letzten zwei Tagen Mumble-Django und das Wiki komplett überarbeitet, die Installation ist jetzt deutlich einfacher geworden. Die wichtigsten Schritte sind: 1. Benötigte Pakete installieren
apt-get install python-django python-django-registration python-dbus libapache2-mod-wsgi mercurial 2. Murmur so konfigurieren, dass er über DBus zu erreichen ist
Dazu musst du "dbus=system" in die murmur.ini eintragen und Murmur neu starten. In der Log sollte dann sowas auftauchen:
<W>2009-03-23 22:22:32.563 DBus registration succeeded 3. Mumble-Django runterladen
Führe in dem Verzeichnis in das du MD installieren willst folgenden Befehl aus:
hg clone https://bitbucket.org/Svedrin/mumble-django/
Dadurch wird ein Verzeichnis "mumble-django" erzeugt, in dem die neueste Version liegt. 4. Die Mumble-Datenbank erstellen
Das macht Django automatisch, wenn du den folgenden Befehl in mumble-django/pyweb ausführst:
su www-data -c "python manage.py syncdb"
Du wirst bald gefragt ob du einen Administrator anlegen möchtest, beantworte diese Frage unbedingt mit "yes", weil du dich sonst im Admininterface nicht einloggen kannst! 5. Testen
Wenn du
"python manage.py runserver"
ausführst startet Djangos Test-Server, mit dem du schon alle Funktionen nutzen kannst. Das ist allerdings nur zum Testen, diesen Server dauerhaft zu verwenden wird von den Django-Entwicklern nicht empfohlen. 6. Webserver einrichten
Die Config des Webservers habe ich im Wiki hier näher beschrieben:
http://bitbucket.org/Svedrin/mumble-django/wiki/Webserver_Setup Ich hoffe das hilft dir weiter. ☺ Grüße
Svedrin
|
simorz
Anmeldungsdatum: 24. April 2005
Beiträge: 26
|
Hallo,
Nutze Ubuntu 8 LTS bei mir kommt: Konnte Paket python-django-registration nicht finden
|
IronNighthawk
Anmeldungsdatum: 11. Mai 2009
Beiträge: 8
|
Hi, bin auch dabei Mumble-Django zu installen. Sämtliche Abhängigkeiten sind installiert aber bekomme wenn ich:
ausführe folgende Fehler: server:/home/murmur/public_html/mumble-django/pyweb # python manage.py syncdb
Traceback (most recent call last):
File "manage.py", line 27, in ?
execute_manager(settings)
File "/usr/lib/python2.4/site-packages/django/core/management/__init__.py", line 340, in execute_manager
utility.execute()
File "/usr/lib/python2.4/site-packages/django/core/management/__init__.py", line 295, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/lib/python2.4/site-packages/django/core/management/base.py", line 192, in run_from_argv
self.execute(*args, **options.__dict__)
File "/usr/lib/python2.4/site-packages/django/core/management/base.py", line 218, in execute
self.validate()
File "/usr/lib/python2.4/site-packages/django/core/management/base.py", line 246, in validate
num_errors = get_validation_errors(s, app)
File "/usr/lib/python2.4/site-packages/django/core/management/validation.py", line 28, in get_validation_errors
for (app_name, error) in get_app_errors().items():
File "/usr/lib/python2.4/site-packages/django/db/models/loading.py", line 128, in get_app_errors
self._populate()
File "/usr/lib/python2.4/site-packages/django/db/models/loading.py", line 57, in _populate
self.load_app(app_name, True)
File "/usr/lib/python2.4/site-packages/django/db/models/loading.py", line 72, in load_app
mod = __import__(app_name, {}, {}, ['models'])
File "/home/murmur/public_html/mumble-django/pyweb/mumble/models.py", line 178
dbus.String( self.owner.email if self.owner else settings.DEFAULT_FROM_EMAIL ),
^
SyntaxError: invalid syntax
Kann sich jemand vorstellen woran das liegt? Wenn ich mit Django ein Testprojekt erstelle ist das ...syncdb usw. problemlos möglich. @simorz: Hier findest Du zB. ne Source von Django-Registration http://pypi.python.org/pypi/django-registration/0.7
|
MistaGee
Anmeldungsdatum: 26. Juni 2008
Beiträge: 15
|
Holla, anscheinend gibts diese Syntax nur in Python 2.5 - du hast damit also einen Bug gefunden. Ich habs gefixt, kannst du bitte die neueste Tip-Version mal probieren? http://bitbucket.org/Svedrin/mumble-django/get/tip.zip Grüße
Svedrin
|
IronNighthawk
Anmeldungsdatum: 11. Mai 2009
Beiträge: 8
|
Huhu, boah bist Du schnell! Und ich hab gerade noch ein Issue auf Bitbucket erstellt 😉. War mir nicht sicher ob hier von Entwicklern noch aktiv gelesen wird ☺. Ich ziehs mir mal und schau was sich tut. Berichte dann gleich wieder hier... EDIT: Funktioniert einwandfrei! ☺ Vielen Dank für die schnelle Hilfe! Ein super Projekt! Freu mich schon drauf wenn ichs laufen hab. Mumble ist zwar schön aber die Verwaltung... 😉 da ist sowas Klasse!
|
MistaGee
Anmeldungsdatum: 26. Juni 2008
Beiträge: 15
|
IronNighthawk schrieb: boah bist Du schnell! Und ich hab gerade noch ein Issue auf Bitbucket erstellt 😉. War mir nicht sicher ob hier von Entwicklern noch aktiv gelesen wird ☺.
Na hey, man hat ja 'nen Ruf zu verlieren *g Ich krieg bei Antworten in diesem Thread sofort 'ne eMail, wenn ich wach bin kann ich mich dann auch zeitnah drum kümmern.
Funktioniert einwandfrei! ☺ Vielen Dank für die schnelle Hilfe! Ein super Projekt! Freu mich schon drauf wenn ichs laufen hab. Mumble ist zwar schön aber die Verwaltung... 😉 da ist sowas Klasse!
Na das hört man doch gern ☺ Grüße
Svedrin
|
IronNighthawk
Anmeldungsdatum: 11. Mai 2009
Beiträge: 8
|
Hallo nochmal, momentan stehe ich leider ein wenig aufn Schlauch. Ist zwar kein Projektproblem sondern eher Django Sache aber könnte ja auch anderen hilfreich sein die vllt. bei diesem Punkt genauso nicht durchblicken 😉. Daher frage ich hier mal. Habe schon viel in der Django Doku gelesen aber wird nichts... Also bis hierher Zitat: Now, the basic setup is complete. You can test Mumble-Django by running python manage.py runserver 0.0.0.0:8000 and pointing your web browser to http://<your.address.example.com>:8000/admin. funzt es nun einwandfrei. Lässt sich über www.domain.de/8000 aufrufen und geht. Meine Problematik ist momentan wie ich es dem Webserver beibringe also dies Zitat: In order to run Mumble-Django on a production webserver like Apache2, you can follow the Webserver Setup page that has further instructions to set up Mumble-Django with WSGI. Ich bin mir auch mit der Django Struktur nicht so ganz sicher. Momentan liegt das komplette Paket bei mir unter "/home/username/mumble-django". Ist das korrekt oder muss ich Teile davon in den Django Pfad (/usr/lib/python/site-packages/django/usw.) kopieren? Angenommen ich möchte nun das Projekt unter "www.domainname.de/murmur" bereitstellen. Wie stelle ich das am besten an? Hab mir eine "murmur_vhost.conf" erstellt die ich in den Apache (http.conf) eingebunden habe.
Diese sieht so aus: <VirtualHost *:80>
ServerName domainname.de/murmur
ServerAlias www.domainname.de/murmur
AddDefaultCharset UTF-8
Alias /static/ /home/murmur/mumble-django/htdocs/
Alias /media/ /usr/lib/python/site-packages/django/contrib/admin/media/
WSGIScriptAlias /murmur /home/murmur/mumble-django/mumble-django.wsgi
WSGIDaemonProcess mumble-django threads=25
WSGIProcessGroup mumble-django
WSGIScriptReloading Off
</VirtualHost>
Funktioniert leider nicht. Kann ich diesen /murmur nach der Domain überhaupt so angeben? Bin mir da nicht sicher. Soll halt nicht direkt über www.domain.de aufrufbar sein da dort bereits anderes liegt. Achja, was das heißen soll verstehe ich leider auch nicht: When you created this config file, enable it by running a2ensite mumble-django and run /etc/init.d/apache2 reload to enable the VHost. Viele Grüße IronNighthawk
|
MistaGee
Anmeldungsdatum: 26. Juni 2008
Beiträge: 15
|
Hi, IronNighthawk schrieb: Ich bin mir auch mit der Django Struktur nicht so ganz sicher. Momentan liegt das komplette Paket bei mir unter "/home/username/mumble-django". Ist das korrekt oder muss ich Teile davon in den Django Pfad (/usr/lib/python/site-packages/django/usw.) kopieren?
Das stimmt so. In site-packages brauchst du nichts kopieren, da kommen nur systemweit installierte Python-Module rein.
Angenommen ich möchte nun das Projekt unter "www.domainname.de/murmur" bereitstellen. Wie stelle ich das am besten an?
Ich habe bisher MD als eigener VHost laufen lassen, und habe es so ehrlich gesagt noch gar nicht probiert. Ich denke, der trickreiche Part wäre dann die Anpassung der URLs, das sollte sich aber bewerkstelligen lassen. Ich werd das heute abend mal ausprobieren.
Hab mir eine "murmur_vhost.conf" erstellt die ich in den Apache (http.conf) eingebunden habe.
Diese sieht so aus: <VirtualHost *:80>
ServerName domainname.de/murmur
ServerAlias www.domainname.de/murmur
Das wird so nicht funzen, da ein ServerName nur ein Domainname sein kann, aber kein Pfad.
WSGIScriptAlias /murmur /home/murmur/mumble-django/mumble-django.wsgi
Hier hast du den Pfad korrekt angegeben. Mit ein bisschen Glück funzt es schon, wenn du deinen Domainnamen im ServerName/Alias korrigierst. Du wirst diese Anweisungen aber dann in den VHost von www.domain.de mit reinschreiben müssen, da es ja auf demselben VHost laufen soll.
Achja, was das heißen soll verstehe ich leider auch nicht: When you created this config file, enable it by running a2ensite mumble-django and run /etc/init.d/apache2 reload to enable the VHost.
Auf Debian-Systemen liegen diese VHost-Configs in /etc/apache2/sites-available. Wenn du dann den genannten Befehl in der Shell ausführst wird die Datei nach /etc/apache2/sites-enabled gelinkt und damit in die Apache-Config eingebunden. Damit kannst du einzelne VHosts ein- und ausschalten ohne die Config selbst bearbeiten zu müssen. Ich probier das heute abend mal aus, wie man sowas am besten bewerkstelligen könnte; der empfohlene Weg ist allerdings ein eigener VHost. Wie wär's mit mumble.domain.de? ☺ Grüße,
Svedrin
|
IronNighthawk
Anmeldungsdatum: 11. Mai 2009
Beiträge: 8
|
Hi, wow super erklärt, danke! MistaGee schrieb: Das stimmt so. In site-packages brauchst du nichts kopieren, da kommen nur systemweit installierte Python-Module rein.
Ah ok. Hatte mich etwas verwirrt als ich im Netz las.
Das wird so nicht funzen, da ein ServerName nur ein Domainname sein kann, aber kein Pfad.
Schade, dachte ich mir fast und wäre zu einfach gewesen 😉.
Auf Debian-Systemen liegen diese VHost-Configs in /etc/apache2/sites-available. Wenn du dann den genannten Befehl in der Shell ausführst wird die Datei nach /etc/apache2/sites-enabled gelinkt und damit in die Apache-Config eingebunden. Damit kannst du einzelne VHosts ein- und ausschalten ohne die Config selbst bearbeiten zu müssen.
Achso das kannte ich nicht 😉
der empfohlene Weg ist allerdings ein eigener VHost. Wie wär's mit mumble.domain.de? ☺
Würde das so gehen?
<VirtualHost *:80>
ServerName mumble.domainname.de
ServerAlias mumble.www.domainname.de
WSGIScriptAlias / /home/murmur/mumble-django/mumble-django.wsgi
Und der Rest wie gehabt?
Wenn das so geht hätte ich nichts dagegen! ☺ Was mich auch noch etwas wundert...
der Rootpfad des Projekts ist wirklich /mumble-django/ ? Oder muss in irgendeinen Unterpfad dieses Verzeichnisses gelinkt werden? Wunder mich nur weil ich nirgends ne Index in mumble-django sehe.
Aber das erledigen dann wohl die VHOST Einträge. Grüße IronNighthawk EDIT: Hab grade nachgedacht kann ja so nicht gehen da es ja keine Domain ist... ich teste mal ein wenig...
|
MistaGee
Anmeldungsdatum: 26. Juni 2008
Beiträge: 15
|
IronNighthawk schrieb: der empfohlene Weg ist allerdings ein eigener VHost. Wie wär's mit mumble.domain.de? ☺
Würde das so gehen?
<VirtualHost *:80>
ServerName mumble.domainname.de
ServerAlias mumble.www.domainname.de
WSGIScriptAlias / /home/murmur/mumble-django/mumble-django.wsgi
Und der Rest wie gehabt?
Jap, das müsste stimmen.
Was mich auch noch etwas wundert...
der Rootpfad des Projekts ist wirklich /mumble-django/ ? Oder muss in irgendeinen Unterpfad dieses Verzeichnisses gelinkt werden?
Naja, es gibt hier keinen Root-Pfad im klassischen Sinn, weil Apache hier nur eine Art Proxyserver zwischen der großen weiten Welt(tm) und dem WSGI-Handler von Django spielt. Er kriegt eine Anfrage für "/" (was heißt: gib mal Index), reicht die aber direkt an Django weiter und was auch immer Django ihm dann zurückgibt schickt er dem Benutzer zurück. Wie genau er das mit dem "an Django übergeben" bewerkstelligen kann sagst du ihm über den WSGIScriptAlias in der Config, der auf die .wsgi-Datei zeigen muss; und weil die weiß wo der Rest liegt[1] wird Django dann gefunden. Die .wsgi-Datei ist also quasi das was bei PHP die index.php ist. Grüße,
Svedrin [1] Sie weiß es nicht. Sie hofft einfach mal dass sie selbst in /mumble-django/ liegt, und Django in /mumble-django/pyweb.
|
IronNighthawk
Anmeldungsdatum: 11. Mai 2009
Beiträge: 8
|
Mit <VirtualHost *:80>
ServerName mumble.domainname.de
ServerAlias www.mumble.domainname.de
WSGIScriptAlias / /home/murmur/mumble-django/mumble-django.wsgi sieht es jetzt schonmal ganz gut aus. Krieg jetzt nur noch ein: Zugriff verweigert! Der Zugriff auf das angeforderte Verzeichnis ist nicht möglich. Entweder ist kein Index-Dokument vorhanden oder das Verzeichnis ist zugriffsgeschützt. Mal sehen muss wohl dem Apache beibrigen das er keine Index erwarten soll. Schau mir gerade mal die Allow, Deny Sachen an. Von einer Fehlkonfig des mod_wsgi brauche ich deswegen wohl kaum ausgehen oder? Aber glaube kaum denn in der Error Log versucht er bereits auf die "mumble-django.wsgi" zuzugreifen obwohl auf das Hauptverzeichnis gelinkt ist.
|
MistaGee
Anmeldungsdatum: 26. Juni 2008
Beiträge: 15
|
IronNighthawk schrieb: Krieg jetzt nur noch ein: Zugriff verweigert! Der Zugriff auf das angeforderte Verzeichnis ist nicht möglich. Entweder ist kein Index-Dokument vorhanden oder das Verzeichnis ist zugriffsgeschützt.
Ich vermute mal dass das Verzeichnis /home/murmur/mumble-django (und alles dadrin) für den Benutzer www-data (unter dem der Webserver läuft) nicht zugreifbar ist. Die Standardlösung ist da, den Benutzer www-data zu der Gruppe hinzuzufügen, der das Verzeichnis gehört. Dann müsstest du den Server einmal neu starten, damit das ganze wirksam wird.
Aber glaube kaum denn in der Error Log versucht er bereits auf die "mumble-django.wsgi" zuzugreifen obwohl auf das Hauptverzeichnis gelinkt ist.
Wie meinen? Hast du 'nen DocumentRoot gesetzt? Den brauchst du nicht, die WSGI-Direktive leitet eh den VHost komplett auf Django um. Grüße,
Svedrin
|