Skript läuft nicht auf IIS
Oliver
- perl
Die folgende Perl-Script Routine wird vom Browser mit einem lapidaren "...document contains no data..." quittiert.
Systeme: IIS 5 auf w2k
Verzeichnis: lokales cgi, volle rechte
Anm.: Auf der Kombination linux/apache tut das ganze
Das Skript:
#!c:\perl\bin\perl.exe
print "Content-type: text/html\n\n";
open (TEST, "testfile.htm");
while (<TEST>) {
print;
}
close(TEST);
Ich fummele nun schon den 2ten Tag da dran rum und verzweifle langsam, vielleicht hat jemand eine Idee.
Bereits versuchte Varianten:
1. Header im IIS definieren
2. Zeile 7: open(TEST, "< testfile.htm");
3. Zeile 7: open(TEST, "<< testfile.htm");
4. Zeile 7: open(TEST, $filepath);
Vielen Dank schonmal...
:o) Oli
Hi,
open (TEST, "testfile.htm");
open(TEST, 'testfile.htm') or die "Kann testfile.htm nicht oeffnen: $!";
Dir ist hoffentlich bewußt, daß ein aktuelles Verzeichnis im CGI-Kontext nicht definiert ist. Die Datei kann überall gesucht werden.
Cheatah
Dir ist hoffentlich bewußt, daß ein aktuelles Verzeichnis im CGI-Kontext nicht definiert ist. Die Datei kann überall gesucht werden.
ja, voll und ganz .). Hier mal das ganze Ding, ist ja nicht gross:
#c:\perl\bin\perl.exe
print "Content-type: text/html\n\n";
open (TEST, "d:\inetpub\wwwroot\intranet\cgi-bin\testfile.htm") or die "wieder nix: $!";
while (<TEST>) {
print;
}
close(TEST);
Was mich völlig kirre macht, ist, dass das unter Linux völlig problemlos läuft, unter dem w2k/IIS5/Active Perl 513 (auf alle fälle 5.xx) aber nicht.
Wenn ich das von der Konsole aus aufrufe, dann printet er den Header und schluss. Auch "<" oder "<<" nutzt nix. Ich habe langsam wohl alle möglichen und unmöglichen Variationen durch :(
Auch wenn ich das Skript in einem Verzeichnis ablaufen lasse geht nix, deshalb glaube ich nicht, dass ich am Server was falsch konfiguriert habe - kann man beim IIS ja eigentlich auch nicht.
Alle anderen Perl-Skripte auf dem Server / im Verzeichnis laufen fehlerfrei, nur dieses "open" will er nicht tun.
Mittlerweile bin ich einfach nur noch ratlos. Hat jemand evtl. ein anderes Skript, das ein File offnet und printet und auf dem IIS 5 läuft? Das muss doch gehen...
:o( oli
PS es bringt auch nix, eine komplette HTML-Datei zu öffnen und dafür den HEADER wegzulassen, geht trotzdem nicht.
Hi,
open (TEST, "d:\inetpub\wwwroot\intranet\cgi-bin\testfile.htm") or die "wieder nix: $!";
^ ^ ^
nimm mal den slash oder \ ...
Rolf
Hi,
open (TEST, "d:\inetpub\wwwroot\intranet\cgi-bin\testfile.htm") or die "wieder nix: $!";
^ ^ ^
nimm mal den slash oder \ ...
Rolf
hehe, ganau, siehe mein post von gerade eben...
Trotzdem vielen Dank :o))
;o) oli
PS Mann, ist mir das peinlich...
Aua, ich hab's. Der Pfad muss so angegeben werden:
d:/inetpub/wwwroot/intranet/cgi-bin/testfile.htm
also "/" anstatt "". Dann gehts.
Was für ein dämlicher Fehler... sorry, das ich Euch mit sowas blästigt habe.
:o) Oli