Keresés

Részletes keresés

Törölt nick Creative Commons License 1999.06.01 0 0 9
Hali!

A cgi-t szerintem teheted mas konyvtarba,csak a server konfigot kell atirni.Suseben a cgi-t
/usr/local/htttpd/cgi-bin/-ben talalod.
Ja,a c(i)gi veszelyes,de nagyon jo:)))

Hi:
Atom <

TaXiN Creative Commons License 1999.05.14 0 0 8
Kukac !

A cgi veszelyes uzem. Alapesetben nem futtathato akarhonnan.
R6 -ban /home/httpd/cgi-bin a helye
SuSE-ben valahol az /usr-ben keresd.

atom_ Creative Commons License 1999.05.13 0 0 7
Sziasztok!

Hat igen,jo dolog ez a CGI,azert kezdtem Linuxozni is:))
Roviden leirom,hogy en hogy irkalok CGI-t hatha tudok valami ujat mondani:
En perlben irom,ahogy latom ti is,es apache van a gepemen.Nekem nem kellett allitanom semmit.
/usr/local/httpd/ alatt van a cucc,de a homeokban is lehet public_html -t kreallni es ala egy cgi-bin konyvtarat,ide kerul a cgi.Mondom nalam ez a /usr/local stb alatt van oda a cgi-bin konyvtarba teszem be a cgi-ket,elotte beallitom a chmoddal a modokat.A HTML-ben az ACTION="http://atom/cgi-bin/script_neve.cgi -t szoktam beirni.Fontos,amivel szivatm egy ideig,hogy en .pl kiterjesztest adtam neki mivel ugy olvastam a webserver leirasban,hogy azzal is tud mit kezdeni.Ja,tudott is kiirta a program listajat.Szoval jobb a cgi kiterjesztes neki.A masik,amire figyelni kell,hogy acontent-type sor utan azt hiszem egy sor ures kell!!
A script elso sorat erdemes igy irni:
#/usr/bin/perl -w
Ekkor a server logba bekerul egy par sor,ha gond van.
Meg lenne mit irni,de nem akarok senkit lefarasztani,hatha tudjatok ezeket.
Csa:
Atom

Ui:
Van egy-ket jo Perl konyv erdemes oket meg venni.

Előzmény: Kukac (6)
Kukac Creative Commons License 1999.04.21 0 0 6
Sziasztok !

Megint én vagyok....

Elmagyarázná valaki, hogy hol lehet a
CGI-t futtatni Linux alatt.

Az a helyzet, hogy csináltam a saját
könyvtáramban egy public_html könyvtárat.
Beleraktam a weboldalam.
A HTML és képfájlok működtek a localhoston.
Egyedül a CGI nem akart elindulni.

Kell valamit változtatni ahhoz
a httpd.conf -ban, hogy
a CGI scriptjeim működjenek ???

Állandóan a "Premature end of script"
üzenetet írta ki a httpd_error.log
fileban.

Az a furcsa, hogy a scriptet lefuttatva
a http://localhost/cgi-bin -ben
meglepetésemre működött.

Mi lehet a probléma ?????????

bnoplwk2 Creative Commons License 1999.04.19 0 0 5
print <lt;VEGE = < < VEGE
sorry, de lama vagyok ezekhez az isohtml kodokhoz :)))
Előzmény: bnoplwk2 (4)
bnoplwk2 Creative Commons License 1999.04.19 0 0 4
hát kukac, pedig beszédes hibauzenet :-)
Probáld meg pl igy:

#!/usr/bin/perl
# Hello vilag
print <lt;VEGE
Content-type: text/html
<HTML>
<HEAD>
<TITLE>Lapcim</TITLE>
</HEAD>
<BODY>
<H1>Hello világ</H1>
</BODY>
</HTML>
VEGE

Az a baj, hoy minden egyes print uj pipe-ot nyit, ha jol emlexem cgi eseten, igy a 2. printed mar leszakad a http szerverrol, csak annyit fog latni a scriptedbol, hogy "Conten-type: text/html", amibol tenyleg ugy tunik, hogy csonka (ures) script.
Egy erdekes notacio van itten a neve "here document" - egy rekurziv input. Azt mondja a printnek, hogy irkald ki ami kovetkezik, egeszen addig amig azt nem olvasod, hogy "VEGE". A VEGE helyett termeszetesen megadhatsz toled fuggo tetszoleges markert...

Előzmény: Kukac (3)
Kukac Creative Commons License 1999.04.17 0 0 3
Sziasztok !

Még kezdő Linuxos vagyok, DE nem lámer !
A gondom az , hogy cgi futtatásakor,
minden tökéletesen be van állítva és mégis
egy hibaüzenettel áll le:

"premature end of script"

ez szerepel a logfileban

#!/usr/bin/perl

print "Content-type: text/html \n\n";
print "OK";

oops Creative Commons License 1999.03.22 0 0 2
Hat, lehet hogy nagyon idiota eszrevetel, de a #!/local/bin/perl nem
#!/usr/local/bin/perl kellene, hogy legyen? Igy kicsit szokatlan.
Előzmény: GabE (1)
GabE Creative Commons License 1999.03.19 0 0 1
Tessék:

#!/local/bin/perl

# CGI konvertalo resz
sub cgi_convert {
my $p = shift;
$p =~ tr/+/ /; #minden + jelet szóközre cserél
$p =~ s/%0D%0A/
/g; #sortores
$p =~ s/%([0-9a-f]{2})/pack("c",hex($1))/ige; # hexa kódokat vissza
return $p;
}

read STDIN, $post_parameter,$ENV{'CONTENT_LENGTH'};
@post_parameters = split('&',$post_parameter);
for( @post_parameters ){
($p,$v) = split('=');
$p = cgi_convert $p;
$v = cgi_convert $v;
$POST{$p} = $v;
}

print "Content-type: text/html\n\n";
#print $post_parameter;
print "Nev: $POST{azon}
";
print "Jelszo: $POST{jelszo}
";
print "Szoveg: $POST{szoveg}

";

Teljesen pirmitív szerintem, nemtom miért nem müxik...
Előre is köszi a segítséget

GabE

Előzmény: Ariel (0)
Ariel Creative Commons License 1999.03.19 0 0 0
szeritnem rakd ide a forras reszletet...
GabE Creative Commons License 1999.03.18 0 0 topiknyitó
Segítség!
Egy form értékeit POST-tal adom fel és amikor egy perl progival kiértékelném baromságokat ad vissza. Egy darabig (2x-3x) jól működik utánna megbolondul és olyan mintha összefűzné (egymás után írná) több POST-olás eredményét.
Valaki tud segíteni?
Előre is köszi
GabE

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!