Seite 1 von 1

Fehler in der RewriteRule

Verfasst: 20.07.2006 11:39
von ven
Hallo,

sobald ich eine .htaccess Datei eines Scriptes auf meinen Webspace hochlade, erhalte ich nur noch Error Messages, ich kann keine Seite mehr aufrufen:

Zugriff verweigert!

Der Zugriff auf das angeforderte Objekt ist nicht möglich. Entweder kann es vom Server nicht gelesen werden oder es ist zugriffsgeschützt.

Sofern Sie dies für eine Fehlfunktion des Servers halten, informieren Sie bitte den Webmaster hierüber.
Error 403


Ist schon das zweite Script bei dem ich so ein Problem habe. Sobald ich die .htaccess Datei lösche, gehen die Dateien auf dem Web zwar wieder, aber mod_rewrite natürlich nicht.

In der .htaccess steht:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.php [QSA,L]


Mod_rewrite selbst wird laut info.php geladen, steht unter "Loaded Modules".
Noch zur Anmerkung: Ich besitze einen vServer, muss ich evtl. etwas bestimmtes PHP/Apache-mäßiges vorher einstellen?

Hoff jemand kann mir weiterhelfen.

lg,
ven

Verfasst: 20.07.2006 18:20
von Bob
Noch zur Anmerkung: Ich besitze einen vServer,
Mit Confixx oder Plesk? Oder gänzlich ohne Config-Zeugs?

Verfasst: 20.07.2006 18:46
von ven
Mit Confixx Professional.

Verfasst: 20.07.2006 19:00
von Bob
Dann solltest du unter "httpd spezial" dort das einfügen (statt der .htaccess-Datei)

Code: Alles auswählen

RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
# nutzt du wirklich symbolische Links, sodass du darauf prüfen musst?
#RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-l
# muss wirklich jeder Request in die RewriteRule laufen? Oder kannst du festlegen,
# dass z.B. alles auf .html endet?
RewriteRule ^ /index.php [L]

Verfasst: 23.07.2006 14:29
von ven
Danke für deine Antwort Bob. Allerdings habe ich auf das Script aus anderen Gründen nun verzichtet.

Ich habe nun versucht ganz normale dynamische URL's zu ersetzen.

Probleme:

Besitzt meine .htaccess folgenden Inhalt bekomme ich einen: Error 403

Code: Alles auswählen

RewriteEngine on


Besitzt meine .httaccess folgenden Inhalt bekomme ich einen: Error 500

Code: Alles auswählen

Options +FollowSymlinks
RewriteEngine on
RewriteRule index/(.*)/(.*)/$ /d/index.php?$1=$2


In der confixx_vhost.config habe ich unter meinem aktuellen Web um die oben genannten Probleme zu beheben folgendes eingetragen:

Code: Alles auswählen

Options +FollowSymlinks +SymLinksIfOwnerMatch


Leider hat dies auch nichts gebracht. Ich komm einfach nicht weiter.

Verfasst: 23.07.2006 21:27
von Bob
Was spricht jetzt dagegen,

Code: Alles auswählen

RewriteEngine on
RewriteRule ^/index/([^/]*)/([^/]*)/$ /d/index.php?$1=$2 [L]
unter "httpd spezial" einzufügen?

Verfasst: 24.07.2006 08:52
von ven
Habe ich gemacht, leider immer noch die gleichen Fehler, bzw. wenn ich die .htaccess lösche nimmt er die ganz normalen dynamischen Pfade.

Hier mal meine confixx_vhost.mf

Code: Alles auswählen

<Directory "/var/www/webXX/html">
AllowOverride All
 Options +FollowSymLinks +SymLinksIfOwnerMatch
  <IfModule mod_access.c>
    Allow from all
  </IfModule>
</Directory>

Verfasst: 24.07.2006 13:26
von ven
Boah, was ein Quatch. Meine Änderungen in der confixx_vhost wurden durch ein anderes Directory irgendwie immer überschrieben.
Mod_Rewrite funktioniert nun. Habe es mit folgendem Code getestet und wurde immer nach Google weitergeleitet:

Code: Alles auswählen

RewriteEngine On
RewriteRule ^  http://www.google.de [R,L]


Allerdings funktionieren meine Rules irgendwie nicht.
Meine dynamische URL: index.php?page=seite-xy

Die erste Rule hat mir ein Freund geschustert und die zweite kommt aus einem Generator:

Code: Alles auswählen

RewriteRule ^index/(.*)/(.*)/?$ index\.php?$1=$2
RewriteRule page/(.*)/?$ index.php?page=$1


Wäre super nett wenn mir nochmal jemand helfen könnte :>

Verfasst: 28.07.2006 14:59
von ven
bitte, bitte bitte :)