RewriteEngine und Perl-Scripte vertragen sich nicht

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
StarWolf3000
Mitglied
Beiträge: 1019
Registriert: 25.07.2005 10:20
Wohnort: Stolpen
Kontaktdaten:

RewriteEngine und Perl-Scripte vertragen sich nicht

Beitrag von StarWolf3000 »

Hi, ich hab mal wieder ein Problem mit der RewriteEngine, und zwar folgendes:

In meiner .htaccess hab ich stehen, dass alle Adressen, die nach localhost verweisen stattdessen auf den Namen meines Rechners verweisen. Das hat eine ganze Weile sehr gut funktioniert, bis ich ein Perl-Script starten wollte, was seit dem nicht mehr funktioniert, es kommt immer

Code: Alles auswählen

Forbidden

You don't have permission to access /cgi-bin/file.pl on this server.
Apache/2.0.52 (Win32) PHP/5.0.4 Server at localhost Port 80
Wenn ich die Rewrite*-Anweisungen auskommentiere oder lösche, funktioniert das einwandfrei, aber sobald sie aktiviert sind, kommt der HTTP 403 Forbidden und führt die Scripte nicht aus.

Ich hab zwar einige Zeilen gesehen, die in etwa so aussehen

Code: Alles auswählen

# prevent perl user agent (most often used by santy)
RewriteCond %{HTTP_USER_AGENT} ^lwp.* [NC]
RewriteRule ^.*$ http://localhost/ [R,L]
RewriteCond %{HTTP_REFERER} ^.*$
was allerdings nicht funktioniert.

Gibt es vielleicht Rewrite*-Anweisungen, damit Perl-Scripte wieder ausgeführt werden können?
Verzeichnis: /cgi-bin/, falls jemand eine Lösung parat hat
MOD-Einbauhilfe und Installationen über ICQ, TeamSpeak 2/3 und TeamViewer. Support nur im Forum, eingeschränkt per TeamViewer, aber nicht mehr per PN! • KB:knigge
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Handelt es sich um ein Script das an der Konsole ausgeführt wird oder ein CGI Script? Was für eins? Und bei welchem Rewrite-Befehl genau hört es auf zu funktionieren? Bei dem von dir geposteten?
KB:knigge
Benutzeravatar
StarWolf3000
Mitglied
Beiträge: 1019
Registriert: 25.07.2005 10:20
Wohnort: Stolpen
Kontaktdaten:

Beitrag von StarWolf3000 »

Es handelt sich dabei um CGI-Scripte, die im Browser ausgeführt werden.

Das zeilenweise Aktivieren der Engine ergab folgendes:

Code: Alles auswählen

# RewriteEngine On
# RewriteBase /
# RewriteCond %{HTTP_HOST} !^$
# RewriteCond %{HTTP_HOST} !^rechner [NC]
# RewriteRule (.*) http://rechner%{REQUEST_URI} [R=301,L]
Ergebnis: Script wird ausgeführt, alles OK, Pfade werden nicht umgeschrieben

1. Änderung: "RewriteEngine On" wird nicht auskommentiert

Code: Alles auswählen

RewriteEngine On
# RewriteBase /
# RewriteCond %{HTTP_HOST} !^$
# RewriteCond %{HTTP_HOST} !^rechner [NC]
# RewriteRule (.*) http://rechner%{REQUEST_URI} [R=301,L]
Ergebnis: Script wird ignoriert, HTTP 403-Meldungen werden beim Aufruf des Scriptes erzeugt, Pfade werden nicht umgeschrieben

2. Änderung: "RewriteEngine" wird auf "Off" gesetzt

Code: Alles auswählen

RewriteEngine Off
# RewriteBase /
# RewriteCond %{HTTP_HOST} !^$
# RewriteCond %{HTTP_HOST} !^rechner [NC]
# RewriteRule (.*) http://rechner%{REQUEST_URI} [R=301,L]
Ergebnis: Script wird ausgeführt, alles OK, Pfade werden nicht umgeschrieben

Also fängt das Problem bereits mit dem Aktivieren der RewriteEngine an.
MOD-Einbauhilfe und Installationen über ICQ, TeamSpeak 2/3 und TeamViewer. Support nur im Forum, eingeschränkt per TeamViewer, aber nicht mehr per PN! • KB:knigge
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Dann sind weiter unten in der .htaccess Datei aber noch andere RewriteRule Anweisungen...
KB:knigge
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Beitrag von easygo »

Oder sind im Verzeichnis cgi-bin bzw. in anderen Unterebenen
noch weiter .htaccess Dateien am Start? easy
Benutzeravatar
StarWolf3000
Mitglied
Beiträge: 1019
Registriert: 25.07.2005 10:20
Wohnort: Stolpen
Kontaktdaten:

Beitrag von StarWolf3000 »

@Pyramide: nein, ich habe nur diese geposteten Rewrite*-Anweisungen drin

@easygo: nur in anderen Ordnern, die nichts mit dem /cgi-bin/ zu tun haben, befinden sich weitere .htaccess-Dateien, im /cgi-bin/ selbst ist keine, genau wie in Unterordnern von /cgi-bin/
MOD-Einbauhilfe und Installationen über ICQ, TeamSpeak 2/3 und TeamViewer. Support nur im Forum, eingeschränkt per TeamViewer, aber nicht mehr per PN! • KB:knigge
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Beitrag von easygo »

Ok dann versuchs mal testweise mit der Zeile

Code: Alles auswählen

Options +FollowSymLinks
Wichtig ist nur, dass die Zeile über der Direktive RewriteEngine On
steht und falls das nicht hilft, einfach nochmal melden. easy
Benutzeravatar
StarWolf3000
Mitglied
Beiträge: 1019
Registriert: 25.07.2005 10:20
Wohnort: Stolpen
Kontaktdaten:

Beitrag von StarWolf3000 »

Code: Alles auswählen

Options +FollowSymLinks
hab ich bereits in der httpd.conf für den Root gesetzt, wo eben diese .htaccess auch liegt
MOD-Einbauhilfe und Installationen über ICQ, TeamSpeak 2/3 und TeamViewer. Support nur im Forum, eingeschränkt per TeamViewer, aber nicht mehr per PN! • KB:knigge
Benutzeravatar
easygo
Mitglied
Beiträge: 2170
Registriert: 03.09.2004 13:45
Kontaktdaten:

Beitrag von easygo »

Aha und rewriteOptions steht dort auf ??
Benutzeravatar
StarWolf3000
Mitglied
Beiträge: 1019
Registriert: 25.07.2005 10:20
Wohnort: Stolpen
Kontaktdaten:

Beitrag von StarWolf3000 »

rewriteOptions? du meinst AllowOverride?
das steht auf "All" in der httpd.conf
MOD-Einbauhilfe und Installationen über ICQ, TeamSpeak 2/3 und TeamViewer. Support nur im Forum, eingeschränkt per TeamViewer, aber nicht mehr per PN! • KB:knigge
Antworten

Zurück zu „Coding & Technik“