/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
open(UDFIL, ">>$newfil") - parameterprobs~
Fra : fix


Dato : 25-07-07 11:39



Jeg har nu fået bygget et script, som virker helt korrekt fra
kommandoprompten.
Hvis jeg derimod kalder det fra en htmlside med submit, får jeg (jvf.
error_log) fejl i linien med subj.
(Bad header=/var/log/tempfil: /home/httpd/cgi-bin/addip.pl
kan kke åbne destination at /home/httpd/cgi-bin/addip.pl line 7.)
Desuden får jeg en "premature end of script" fejl, men kun ved kald fra
htmlside.

#!/bin/perl
$orgfil="/etc/rc.d/rc.firewall.blocked";
$newfil="/var/log/tempfil";
$addre = $ARGV[0];
$mark ="#placer_herefter";

open(UDFIL, ">>$newfil") or die "kan kke åbne destination"; ## <fejl
ved htmlkald
open(LOG, $orgfil) or die "kan ikke åbne original" ;
while ($line = <LOG>) {
# File is open, start reading it!

print (UDFIL $line);
chomp ($line);
if ($line eq $mark){
print (UDFIL "iptables -I REDIF -s $addre -j DROP \n")}
}
close (LOG);
close (UDFIL);

---
Det er tilladt både at moppe og at grine af min "addline" løsning, men hån
frabedes!

finn



 
 
Thorbjørn Ravn Ander~ (25-07-2007)
Kommentar
Fra : Thorbjørn Ravn Ander~


Dato : 25-07-07 12:13

"fix" <fix@faxe.dk> writes:

> Hvis jeg derimod kalder det fra en htmlside med submit, får jeg (jvf.
> error_log) fejl i linien med subj.
> (Bad header=/var/log/tempfil: /home/httpd/cgi-bin/addip.pl
> kan kke åbne destination at /home/httpd/cgi-bin/addip.pl line 7.)

Webserveren kører nok som en bruger der ikke må skrive i destinationen
(altså den der fildims).

Du vil nok enten chmod'de eller chowne.
--
Thorbjørn Ravn Andersen

Michael Zedeler (25-07-2007)
Kommentar
Fra : Michael Zedeler


Dato : 25-07-07 12:09

fix wrote:
> Jeg har nu fået bygget et script, som virker helt korrekt fra
> kommandoprompten.
> Hvis jeg derimod kalder det fra en htmlside med submit, får jeg (jvf.
> error_log) fejl i linien med subj.
> (Bad header=/var/log/tempfil: /home/httpd/cgi-bin/addip.pl
> kan kke åbne destination at /home/httpd/cgi-bin/addip.pl line 7.)
> Desuden får jeg en "premature end of script" fejl, men kun ved kald fra
> htmlside. [klip]
> Det er tilladt både at moppe og at grine af min "addline" løsning, men hån
> frabedes!

Hvis du bruger dit script som CGI-script (kalder det igennem en
webserver), skal det overholde CGI-standarden.

http://www.google.com/search?q=cgi+perl+howto

Mvh. Michael.


Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407849
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste