ubuntuusers.de

Mumble Server Web Interface

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

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:

1
python manage.py syncdb

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

Antworten |