Schrift
[thread]657[/thread]

Debugger für CGI-Skripte aufrufen

Leser: 1


<< >> 9 Einträge, 1 Seite
pug
 2006-01-22 19:40
#6749 #6749
User since
2005-08-17
91 Artikel
BenutzerIn
[default_avatar]
Hallo zusammen,
ich versuche unter anderem gerade mein Perl-CGI-Skript mit einem Debugger aufzurufen. Dazu habe ich in mein Skript mit dieser Funktion aufgerufen:
Code: (dl )
1
2
3
4
5
6
7
8
#!/usr/bin/perl -d:ptkdb

use warnings;
use strict;
use CGI;
use DBI;

sub BEGIN { $ENV{DISPLAY} = "localhost:0.0"; }


Und dann xhost localhost bzw.
Quote
venus:/usr/lib/cgi-bin# xhost http://localhost
Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified

xhost: unable to open display ":0.0"
...probiert. Das Ergbnis seht Ihr. Was mache ich falsch?

Gruss Christian
Ein Betriebssystem sie zu knechten, sie alle zu finden, Ins Dunkel zu treiben und ewig zu binden.

William Gates III
steffenw
 2006-01-22 21:32
#6750 #6750
User since
2003-08-15
692 Artikel
BenutzerIn
[Homepage] [default_avatar]
alles!

ptkdb ist eine Klickeroberfläche, also ein Programm mit Fenster. Und CGI ist eine völlig andere Welt. Da erzeugst Du mit Perl Texte, z.B. HTML, was nach STDOUT geschrieben wird, nachdem ein Header dem Webserver sagte, was da überhaupt kommt, z.B. text/HTML.

Debuggen von CGI ist ganz leicht. Das CGI::Carp-Modul hat alles drin, das HTML erzeugen, wie auch das Debugging. Suche in der Doku zum Modul mal nach fatals.\n\n

<!--EDIT|steffenw|1137958952-->
$SIG{USER} = sub {love 'Perl' or die};
renee
 2006-01-22 23:59
#6751 #6751
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Man kann CGI-Skripte auch ueber die Konsole aufrufen:

cgiskript.cgi key1=value1 key2=value2

Aber man muss beachten, dass dann das Skript mit einem anderen Benutzer als ueber den Browser ausgeführt wird. Aber für's erste Debugging ist es schon sinnvoll!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
ptk
 2006-01-23 02:14
#6752 #6752
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Wo hast du "xhost +localhost" geschrieben: im Skript oder in deiner Kommandozeile?
esskar
 2006-01-23 07:23
#6753 #6753
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
es (gab mal)/gibt einen web-based Perl Debugger mit Hilfe von catalyst (oder war es maypole). vielleicht kann man den ja für cgi-scripte erweitern.
GwenDragon
 2006-01-23 09:04
#6754 #6754
User since
2005-01-17
14533 Artikel
Admin1
[Homepage]
user image
Quote
Xlib: connection to ":0.0" refused by server
Du hast versuch, den X-Server auf dem Linux- Rechner zuzugreifen. Das wurde dir nicht erlaubt.
ptkdb braucht eine grafische Oberfläche.

Quote
-----------------------------------------------------------------------
Zugriff auf den X-Server
-----------------------------------------------------------------------

http://groups.google.com/group....32a288f
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

pug
 2006-01-23 17:18
#6755 #6755
User since
2005-08-17
91 Artikel
BenutzerIn
[default_avatar]
Das mit ptkdb war ein Vorschlag aus dem Buch "CGI Programmierung mit Perl" OReilly. Es war nur ein Versuch, ich weiß was ein X-Server ist, und habe auch mitbekommen, daß ich für den www-user, der den apache-server "bedient" keine Rechte auf dem X-Server bekommen habe. Frage war nur warum und was kann man da tun. Und es spricht ja auch nichts dagegen, einen grafischen Debugger für eine Web-Anwendung zu benutzen. Das Problem bei mir ist im Moment aber einzig und allein die Datenbank.
Ein Betriebssystem sie zu knechten, sie alle zu finden, Ins Dunkel zu treiben und ewig zu binden.

William Gates III
coax
 2006-01-24 02:00
#6756 #6756
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
[quote=pug,23.01.2006, 16:18]Das mit ptkdb war ein Vorschlag aus dem Buch "CGI Programmierung mit Perl" OReilly.[/quote]
Steht auch in perldoc Devel::ptkdb.
Quote
Es war nur ein Versuch, ich weiß was ein X-Server ist, und habe auch mitbekommen, daß ich für den www-user, der den apache-server "bedient" keine Rechte auf dem X-Server bekommen habe. Frage war nur warum und was kann man da tun.

Da die Authentifizierung durch xhost nicht ausreicht (da im Standardfall nur hostbasiert) gibt es noch xauth.
Dazu
man xauth
man Xsecurity

und
Alle Macht dem User bzw.
Alle Macht dem User - xhost vs. xauth

[quote=esskar,23.01.2006, 06:23]es (gab mal)/gibt einen web-based Perl Debugger mit Hilfe von catalyst (oder war es maypole). vielleicht kann man den ja für cgi-scripte erweitern.[/quote]
Yabb, und zwar CPAN:Devel::ebug::HTTP, der CPAN:Catalyst als Frontend und CPAN:Devel::ebug als Backend nutzt.
Dazu gab's auch 'n Filmchen, finde ich nur gerade nicht mehr.
,,Das perlt aber heute wieder...'' -- Dittsche
pktm
 2006-01-24 14:03
#6757 #6757
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
CGI::Application hat da recht komfortable Module. So wird z.B. DegbugScreen genutzt, um einen Stack-Trace in einem Popup mit ein paar anderen Informationen auf den Bildschrim auszugeben.
Ist halt nur die Frage, in wie weit du dein Programm "mal eben kurz" auf das CAP-Framework anpassen kannst / möchtest oder wie du es benutzten kannst.

Sie dazu: CGI::Application, CGI::Application::Plugin::DebugScreen, CGI::Application::Plugin::DevPopup

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )
<< >> 9 Einträge, 1 Seite



View all threads created 2006-01-22 19:40.