• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] XMMS über einen Link auf einer HTML page starten

Fat_Fox

Hacker
Hi @ all

nachdem wir geklärt haben das es theoretisch möglich sein sollte eine Anwendung auf dem webserverserver über eine htmlpage zu starten habe ich mich an der Umsetzung dieser Idee versucht, allerdings mit gerimngem erfolg, das Vorhaben ist:

unter SuSE 10.0 (und später 9.0) einen Apachen aufzusetzen und ihm eine htmlseite zum ausliefern zu geben, auf der htmlseite soll ein link (in form eines formularbuttons, bildchens oder ähnlichem) sein der beim klicken das programm XMMS (oder allgemein eine Anwendung mit grafischer Oberfläche) startet

Ich habe also den apache2 webserver mit den modulen perl,php,phython und ruby installiert und ihm mein homepage zum anzeigen gegeben, das funktioniert auch alles soweit

wenn man nun den leuten von selfhtml glauben darf sollte das starten einer externen anwendung z.B. mit einem perl-script möglich sein welches mann dann beim apachen in das Verzeichniss /srv/ww/cgi-bin kopiert

also habe ich mal folgendes kleines script geschrieben:

Code:
#! /usr/bin/perl
use strict;
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);

# Muss sein um error 500 zu vermeiden
print "Content-type: text/html\n\n";
print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">', "\n";
print "<html><head><title>XMMS Startup Script</title> <br></head>\n";
print "<body>\n";
print "es sollte nun XMMS gestartet werden\n";
print "</body></html>\n";
exec("/usr/bin/xmms");

das funktioniert auf der konsole wunderbar (ich bekomm natürlich bei print die kompletten html tags zu sehen aber is ja logisch) xmms wird gestartet

wenn ich das ganze jetzt über den apachen aufrufen möchte z.B.
per http://tux/cgi-bin/test.pl (nich klicken, server ist nur lokal erreichbar !)

bekomme ich zwar die textausgabe als html page zu sehen aber xmms wird nicht gestartet, ich vermute ja arg ein rechteproblem aber ich weiß nicht wo ich ansetzen soll

cgi-bin und seine dateien sind von jedem schreib,les und ausführbar und xmms ist zumindest von jedem ausführbar

die benutzung einer anderen funktion z.B system brachte auch nichts und eine veränderung der stellung der funktion im quelltext funktionierte auch nicht.

ich bin mit meinem latein am ende, vieleicht wisst ihr ja rat, für hilfe danke ich euch im vorraus.

edit:

ich löse auf:

ich hab es mit perl nicht hinbekommen, aber mit php funktioniert es über die system (xmms) funktion, allerdings muss der xserver zuvor noch mit xhost + geöffnet werden.
 
Oben