PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : CGI Aktivierung?



Stormsam
13.04.02, 11:03
Hi@all!
Weiß vielleicht jemand, wie ich das machen kann, das mein FTP-Server CGI und Perl unterstützt? Was muss ich dafür aktivieren? Was neu installieren?
Schreibt bitte!
MfG
Stormsam

netzmeister
13.04.02, 11:51
Hallo,

Du bringst da wohl etwas durcheinander!

Ein FTP Server der CGI oder Perl unterstützt :confused:
Das gibt es nicht. Perl ist ein CGI, und Apache (ein Webserver)
unterstützt Z.B. Perl innerhalb des CGI Interfaces.

Das geht eingentlich ohne besondere Konfiguration.

Viele Grüsse

Eicke

Stormsam
13.04.02, 14:58
Hi, ja ok, egal ;)
Ich will halt nur das mein SuSE Linux 7.3 Server CGI un Perl scripte unterstützt, doch das tut es nicht!!!!
Also es kommen nur Fehler meistens so was:

Forbidden
You don't have permission to access /URL/DATEI.cgi on this server.


--------------------------------------------------------------------------------

Apache/1.3.20 Server at nameserver.user Port 80

oder halt so was:

No access allowed


und bei Perl scipten kommt seite nicht gefunden.
Und ich habe den Datein die Richtigen Rechte (chmod) gegeben!
Das heißt doch dann irgendwie, das das nicht funzt! Und es liegt sicherlich nicht am sciprt und auch nicht an den rechten.
Bis du dir sicher, das man da nichts konfigurieren muss?
Mfg
Stormsam

ArneE
13.04.02, 15:34
Hallo,

Diese Lösung wurde Ihnen von der Suchfunktion (http://www.linuxforen.de/forums/showthread.php?threadid=26899&highlight=Apache+AND+CGI) präsentiert. ;)

Stormsam
15.04.02, 16:07
Hi, also ich habe jetzt alles so in meiner httpd.conf geändert, wie es in diesem Vorgeschlagen Beitrag stand, doch es funzt immer noch nicht :(

Hier habe ich mal die httpd.conf, falls ihr da noch einen Fehler entdeckt, ich find da nix:


www24.brinkster.com/stormsam/TextFile






Schreibt bitte, wenn ihr wisst, was ich noch machen kann ;)
MfG
Stormsam

Stormsam
18.04.02, 15:18
Hi!
Öhm... wisst ihr keine Antwort mehr drauf, oder habe ich etwas falsches gesagt?!?
Schreib bitte wieder zurück!
MfG
Stormsam

ArneE
18.04.02, 15:38
Hallo,

ich habe dir eben meine httpd.conf angehängt. Bei mir ist PHP und Perl installiert und funzt bestens.

Vergleich mal; dann solltest du den Fehler finden.

Stormsam
18.04.02, 17:28
Hi!
Kann man das irgendwie nachgucken, ob Perl auch wirklich installiert ist? Oder ist das bei SuSE Linux 7.3 automatisch dabei?
Und öhm.... könntest du vielleicht deine httpd.conf noch mal anhängen mit "enters" also das nicht alles hintereinander geschrieben ist -> das dürfte eigentlich kein Problem sein, wäre dann etwas übersichtlich ;)
MfG
Stormsam

ArneE
18.04.02, 17:33
Hallo,


Original geschrieben von Stormsam
Hi!
Kann man das irgendwie nachgucken, ob Perl auch wirklich installiert ist? Oder ist das bei SuSE Linux 7.3 automatisch dabei?
Wenn du das Netzwerk-Paket ausgewählt hast, ist Perl, PHP und ein BESTENS FUNKTIONIERENDER Apache dabei.



Und öhm.... könntest du vielleicht deine httpd.conf noch mal anhängen mit "enters" also das nicht alles hintereinander geschrieben ist -> das dürfte eigentlich kein Problem sein, wäre dann etwas übersichtlich ;)

Rechte Maustaste --> Quelltext anzeigen

Seitdem ich Win2000 installiert habe, werden Zeilenumbrüche ganz komisch dargestellt.

Stormsam
09.05.02, 17:30
Hi!
Ich habe jetzt die Datein komplett verglichen und einige Sachen geändert, doch es hat irgendwie nichts gebracht.
Was soll ich jetzt tun?
Schreib bitte zurück
MfG
Stormsam

ArneE
09.05.02, 18:47
Was hat nichts gebracht? Wo liegt dein Problem genau bzw. wie lautet die Fehlermeldung?

Stormsam
09.05.02, 20:48
Hi!
Also es hat sich nichts geändert...
Ich habe hier mal ein Beispiel:
Ich habe mal das ikonboard (CGI) hochgeladen und versucht es zu installieren (mit der install.cgi). Diese Datei sollte laut anleitung den CHMOD 777 haben -> habe ich auch gemacht hat auch gefunzt ...
Nun möchte ich auf diese Seite zugreifen und es kommt:

Forbidden
You don't have permission to access /admin/cgi-bin/ikonboard/install.cgi on this server.


--------------------------------------------------------------------------------

Apache/1.3.20 Server at dominiko.grantspace Port 80


Die URL lautet:


INSTALL.CGI (http://grantspace.dns2go.com/admin/cgi-bin/ikonboard/install.cgi)

Weißt du woran das liegen könnte?
mfG
Stormsam

ArneE
09.05.02, 20:56
Hi,

probier' mal folgendes, um Perl zu testen.

Erstelle mal ein "Hallo-Welt"-Perl-Script und speichere es in "/usr/local/httpd/cgi-bin/". Den Ordnerpfad müsstest du noch evtl. anpassen; sozusagen ins Standard-CGI-BIN. Wenn das Script dort nicht läuft, ist funktioniert das Zusammenspiel von Apache und Perl nicht, ansonsten sind nur "Perl-Berechtigungen" für andere Verzeichnisse nicht gesetzt.

Stormsam
09.05.02, 22:17
"Hallo-Welt"-Perl-Script ??????
Sorry, könntest du vielleicht einen geben?!?

ArneE
09.05.02, 22:40
#!/usr/bin/perl

print ("Content-type: text/html\n\n");
print "Hallo Welt!\n";

Stormsam
16.06.02, 14:16
Sorry das ich mich länger nicht mehr gemeldet habe, hatte viele andere Probleme ...
Ich habe den hallo welt script jetzt ausprobiert und es kamm der Fehler:





Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, user@domain.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.




Kennst du diesen Fehler ?!? Ich habe dem script auch verschiedene Rechte gegeben (CHMOD) doch es kamm immer dieser fehler!!!
Schreib bitte zurück!
MfG
Stormsam

michael.sprick
16.06.02, 14:20
also ich habe jetzt nur deinen letzten Post gelesen...nicht die eigentlich Frage. Aber wenn Du eh schon länger dran arbeitest, dürfte sich ja mittlerweile einiges Verändert haben.

Die Fehlermeldung sagt erstmal garnix aus....nur das es einen Fehler gibt.

was genau anliegt, liest Du in /var/log/httpd/error_log

...oder wo auch immer Du loggst.

Poste mal Dein Script.

gruss, b *g*

Stormsam
16.06.02, 14:40
Hi!
Es kann daran liegen, das ich die .pl datei nicht in "/usr/local/httpd/cgi-bin/" gespeichert habe, da ich nicht weiß wie ich die datei dann öffnen soll!

Hier dann die /var/log/httpd/error_log :





[Sun Jun 16 12:55:06 2002] [error] [client 192.168.0.3] script not found or unable to stat: /usr/local/httpd/htdocs/test/forum/forum.cgi
[Sun Jun 16 12:55:24 2002] [error] (2)No such file or directory: exec of /usr/local/httpd/htdocs/test/forum/forums.cgi failed
[Sun Jun 16 12:55:24 2002] [error] [client 192.168.0.3] Premature end of script headers: /usr/local/httpd/htdocs/test/forum/forums.cgi
[Sun Jun 16 12:56:57 2002] [error] [client
192.168.0.3] File does not exist:
/usr/local/httpd/htdocs/test/cgi-bin/mail-pl
[Sun Jun 16 12:57:01 2002] [error] (13)Permission
denied: exec of
/usr/local/httpd/htdocs/test/cgi-bin/mail.pl failed
[Sun Jun 16 12:57:01 2002] [error] [client
192.168.0.3] Premature end of script headers:
/usr/local/httpd/htdocs/test/cgi-bin/mail.pl
[Sun Jun 16 12:57:16 2002] [error] [client
192.168.0.3] script not found or unable to stat:
/usr/local/httpd/htdocs/test/mail.pl
[Sun Jun 16 12:57:22 2002] [error] (13)Permission
denied: exec of /usr/local/httpd/htdocs/test/mail.pl
failed
[Sun Jun 16 12:57:22 2002] [error] [client
192.168.0.3] Premature end of script headers:
/usr/local/httpd/htdocs/test/mail.pl
Can't open perl script "print": No such file or
directory
[Sun Jun 16 12:57:37 2002] [error] [client
192.168.0.3] Premature end of script headers:
/usr/local/httpd/htdocs/test/mail.pl
Can't open perl script "print": No such file or
directory
[Sun Jun 16 12:57:39 2002] [error] [client
192.168.0.3] Premature end of script headers:
/usr/local/httpd/htdocs/test/mail.pl
Can't open perl script "print": No such file or
directory
[Sun Jun 16 12:57:43 2002] [error] [client
192.168.0.3] Premature end of script headers:
/usr/local/httpd/htdocs/test/mail.pl
Can't open perl script "print": No such file or
directory
[Sun Jun 16 12:57:45 2002] [error] [client
192.168.0.3] Premature end of script headers:
/usr/local/httpd/htdocs/test/mail.pl
[Sun Jun 16 13:14:33 2002] [error] [client
192.168.0.3] script not found or unable to stat: /usr/local/httpd/htdocs/cgi-bin

michael.sprick
16.06.02, 14:51
Ok...der Reihe nach

zunächst mal nimmst du die httpd.conf vor.
suche nach ScriptAlias.

finden müsstest Du sowas in der Art:

ScriptAlias /cgi-bin/ "/usr/local/httpd/cgi-bin/"

wenn dem so ist, dann legst Du Dein CGI in genau diesem Verzeichnis ab - also "/usr/local/httpd/cgi-bin/"

mit chmod 755 script.pl vergibst Du die nötigen Rechte.

der Aufruf des Scriptes geht dann so:

http://localhost/cgi-bin/script.pl

was passiert jetzt?

Stormsam
16.06.02, 16:36
Hi!
also in meiner httpd stand:
ScriptAlias /cgi-bin/ "/usr/local/httpd/cgi-bin/"
drin und da habe ich jetzt auch meine .pl datei eingefügt, wenn ich sie öffnen will, kommt leider immer noch dieser fehler (Internal Server Error ...).
Doch in dem cgi-bin ordner waren noch andere Datein, ich habe dort einfach mal eine .cgi datei geöffnet und die scheind zu funktionieren ... doch als ich von diesem ordner eine .pl datei geöffnet habe kommt wieder der Fehler Internal Server Error ...
Woran kann das liegen?!?
Die Rechte der Datein, die im ordner schon waren, habe ich nicht geändert!
Die rechte von der mail.pl sind 3xread; Write=User und 3x Exec ... ich glaube das war 755 oder?!? Ich habe die rechte auch geändert doch die .pl datei funzt net!
Was jetzt?!?
MfG
Stormsam

michael.sprick
16.06.02, 18:07
hi,

poste mal Dein script....
scheint so, als ob es am Script selber liegt.
bist du fit in Perl?

Sonst kannste auch mal an der kommandozeile folgendes probieren:

perl -c DEINSCRIPT.pl

das checkt die Syntax....

hmmm...aber poste trotzdem mal das Script, es können auch noch andere Fehler sein, wenn es als CGI läuft...

Gruss, B. *g*

Stormsam
16.06.02, 18:13
Hiho
Der code lautet:



#!/usr/bin/perl

print ("Content-type: text/html\n\n");
print "Hallo Welt!\n";



Den hat mir ArneE vorgeschlagen zum testen ;)

wenn ich

perl -c DEINSCRIPT.pl

eingebe, kommt das der Syntax OK ist!

CGI scheint zu funktionieren auch wenn ich als User cgi benutze, allerdings kommt in der /var/log/httpd/error_log immer der fehler:
Premature end of script headers und davor noch ein [error] ... doch der script hat gefunzt!!!

MfG
Stormsam

michael.sprick
16.06.02, 18:16
und so:


#!/usr/bin/perl -W

#das grosse W gibt alle Fehlermeldungen aus

use CGI qw(:standard); # wir benutzen CGI

print header;
print "Hallo Welt";

was steht jetzt in Error-log? oder läuft es sogar?

gruss, B. *g*

Stormsam
16.06.02, 18:25
Hi!
Ja jetzt funzt der script ... komisch ;)
Lag das jetzt am code?
In der error_log steht jetzt wieder Premature end of script headers und davor noch ein [error] was heißt das jetzt`?!?
mfG
Stormsam

michael.sprick
17.06.02, 00:20
hmmm...gute Frage warum jetzt noch script headers angemekkert werden...irgendwie weiss man das nie so genau.

wenn Du das -W in der ersten Zeile weglässt sollte dieser Fehler auch nicht mehr auftauchen.

die schreibweise von print content-type .... kenne ich nicht. vielleicht ist sie falsch, aber ich weiss es auch nicht.
wenn du das Modul CGI benutzt und dann print header machst, ist das aber auf alle Fälle richtig.

auf manchen Maschinen muss auch eine leere Zeile am Ende des Scriptes stehen....auch ein Phänomen, was keiner so recht erklären kann.

...aber egal - hauptsache, es läuft

gruss, B. *g*

mithras
17.06.02, 17:23
hi leute,
ihr scheint euch ja mit dem thema apache / perl gut auszukennen. Hab bei mir daheim einen Apache 2.0.35 mit Perl 1.99-dev02 installiert und leider etwas probs damit, hab schon im forum hier gepostet / in yahoo und google newsgroups, aber keiner hat eine erklärung für mein prob.
daher werde ich mir warscheinlich den apache 1.3 mit dem älteren perl installieren, es laufen doch sowieso so gut wie alle server noch auf dem "alten" apache.
kann mir einer einen vorteil von dem neuen apache sagen (außer dass er unter win23 schneller is als der alte) ?

michael.sprick
17.06.02, 17:35
In den neueren Versionen sind einige Sicherheitslöscher gestopft worden...es wurden neue Module eingefügt usw.
eigenltich genau das, was immer dann ist, wenn ein neues Release kommt.

Schau mal bei apache.org nach den release-notes Da findest Du die Unterschiede zur jeweils vorangegangenen Version...

was ist denn Dein Problem mit dem Server? Vielleicht liegts ja auch am Script oder an der PerlVersion? mittlerweile sind wir bei Perl 5.6.0 ...oder ich zumindest :D

was sagen die error-logs?