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:
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.
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.