Schrift
[thread]451[/thread]

*.pl cript zeigt Internal Server Error (Seite 3)



<< |< 1 2 3 >| >> 22 Einträge, 3 Seiten
GwenDragon
 2005-05-10 12:02
#4558 #4558
User since
2005-01-17
14607 Artikel
Admin1
[Homepage]
user image
Wenn Perl im System-Suchpfad liegt reicht auch ein #!perl

Das Apache2-Manual schreibt:
Quote
ScriptInterpreterSource-Direktive
Beschreibung: Methode zur Ermittlung des Interpreters von CGI-Skripten
Syntax: ScriptInterpreterSource Registry|Registry-Strict|Script
Voreinstellung: ScriptInterpreterSource Script
Kontext: Serverkonfiguration, Virtual Host, Verzeichnis, .htaccess
AllowOverride: FileInfo
Status: Core
Modul: core
Kompatibilität: ausschließlich Win32; Die Option Registry-Strict ist verfügbar seit Apache 2.0.

Die Direktive steuert, wie der Apache den Interpreter zur Ausführung von CGI-Skripten bestimmt. Die Voreinstellung ist Script. Dies veranlaßt den Apache, den Interpreter zu verwenden, auf den die Shebang-Zeile (erste Zeile, beginnt mit #!) im Skript zeigt. Auf Win32-Systemen sieht diese Zeile üblicherweise so aus:

#!C:/Perl/bin/perl.exe

oder, wenn perl im Pfad (Umgebungsvariable PATH) liegt, einfach:

#!perl

Die Einstellung ScriptInterpreterSource Registry veranlaßt eine Suche in HKEY_CLASSES_ROOT der Windows-Registrierungsdatenbank und verwendet die Endung der Skript-Datei (z.B. .pl) als Suchargument. Der durch den Unterschlüssel Shell\ExecCGI\Command oder, falls dieser nicht existiert, Shell\Open\Command definierte Befehl wird zum Öffnen der Skript-Datei verwendet. Wenn die Registrierungsschlüsel nicht gefunden werden, dann verwendet der Apache die Option Script.
Sicherheit

Seien Sie vorsichtig, wenn Sie ScriptInterpreterSource Registry bei Verzeichnissen verwenden, auf die eine ScriptAlias-Anweisung zeigt, denn der Apache wird versuchen, jede Datei innerhalb des Verzeichnisses auszuführen. Die Einstellung Registry kann unerwünschte Programmaufrufe bei Dateien verursachen, die üblicherweise nicht ausgeführt werden. Auf den meisten Windows-Systemen beispielsweise startet der voreingestellte Öffnen-Befehl für .htm-Dateien den Microsoft Internet Explorer, so dass jede HTTP-Anfrage nach einer existierenden .htm-Datei im Skript-Verzeichnis den Browser auf dem Server im Hintergrund starten würde. Dies ist leichte Art und Weise, Ihr System binnen etwa einer Minute zum Absturz zu bringen.

Die seit Apache 2.0 neue Option Registry-Strict macht das gleiche wie Registry, verwendet jedoch nur den Unterschlüssel Shell\ExecCGI\Command. Der Schlüssel ExecCGI ist gewöhnlich nicht voreingestellt. Er muss manuell in der Windows-Registrierungsdatenbank eingerichtet werden und verhindert dann versehentlicht Programmaufrufe auf Ihrem System.
\n\n

<!--EDIT|GwenDragon|1115713023-->
GwenDragon
 2005-05-10 12:11
#4559 #4559
User since
2005-01-17
14607 Artikel
Admin1
[Homepage]
user image
OT: Ich habe mir angewöhnt, für alles was irgendwie auf U*IX aufsetzt, ein eigenes Laufwerk (bei mir X:) zu spendeiren und dort Verzeichnisse wie \usr \bin \ur\local zu erzeugen und dann die diversen Programme dort zu installieren.
SO residiert bei mir Perl unter X:\usr\local\perl , Apache unter X:\usr\local\apache und so weiter.
<< |< 1 2 3 >| >> 22 Einträge, 3 Seiten



View all threads created 2005-03-07 14:32.