Problem mit mod_rewrite

03/26/2013 12:14 PseudoPsycho#1
Hallo.
Ich will schlichtweg eine (Sub-)Subdomain auf eine Datei umleiten und die angefragte Datei als Parameter übergeben.

Versucht habe ich das so:
Code:
RewriteCond %{HTTP_HOST} ^myfiles\.deskt2\.pfweb\.eu$ [NC]
RewriteRule ^(.*)$ system/files.php?op=print&filepath=$1 [L]
Dadurch werden zumindest alle Anfragen an die Subdomain an die Datei weitergeleitet. Die Parameterübergabe funktioniert jedoch nicht so, wie erwartet.
$1 gibt immer system/files.php zurück, unabhängig von dem tatsächlichen Wert, weswegen die aufgerufene Datei natürlich die entsprechenden Einträge in der Datenbank nicht findet.
Demo-Seite: [Only registered and activated users can see links. Click Here To Register...]
Gleiche Datei, direkt aufgerufen: [Only registered and activated users can see links. Click Here To Register...]

Bestimmt irgendwas total simples, was ich nur gerade übersehe. Schonmal danke im Voraus!

Edit (30. März): Links entsprechend der neuen Subdomain angepasst.
03/27/2013 20:00 PseudoPsycho#2
#push
Weiß wirklich keiner weiter?
03/27/2013 20:54 Mikesch01#3
Code:
RewriteRule ^([^.]+)$ system/files.php?op=print&filepath=$1 [L]
Keine Ahnung wo der Fehler liegt, aber probier mal ne andere Regex-version^^
03/27/2013 21:02 Synatex#4
Frage wäre, liegt es an der Condition oder an der Rule ;)?
03/28/2013 09:40 PseudoPsycho#5
Quote:
Originally Posted by Synatex View Post
Frage wäre, liegt es an der Condition oder an der Rule ;)?
Hab' die Condition mal auskommentiert und kann es auf die Rule zurückführen.
Ich krieg' jetzt auf jeder Seite die (selbstdefinierte) Fehlermeldung der PHP-Datei:
Code:
404 - not found: string(16) "system/files.php"
Quote:
Originally Posted by Mikesch01 View Post
Code:
RewriteRule ^([^.]+)$ system/files.php?op=print&filepath=$1 [L]
Keine Ahnung wo der Fehler liegt, aber probier mal ne andere Regex-version^^
Hab's ausprobiert und krieg' jetzt 'ne echte 404-Fehlermeldung.
03/29/2013 11:13 PseudoPsycho#6
#push
Problem besteht leider immernoch...
Wenn ihr noch mehr Informationen braucht, sagt es einfach.
Ich vergeb' auch gerne 'nen FTP-Account per Skype.
03/30/2013 14:28 PseudoPsycho#7
PHP-Friends hat mir nun 'ne neue Subdomain für das Projekt gegeben: deskt2.pfweb.eu
Das Problem hat sich damit etwas verschärft: Statt der Fehlermeldung der PHP-Datei kriege ich nun 'nen echten 404-Fehler.
.htaccess und Links im ersten Beitrag hab' ich angepasst.
03/30/2013 15:53 Mikesch01#8
Code:
RewriteRule ^/(.*)$ system/files.php?op=print&filepath=$1 [L]
Ich glaube er nimmt das Slash mit in den Namen. Versuchs mal so^^

(Slash muss man nicht escapen oder?)
03/30/2013 19:37 PseudoPsycho#9
Quote:
Originally Posted by Mikesch01 View Post
Ich glaube er nimmt das Slash mit in den Namen.
Danke für den Tipp, hilft mir beim aktuellen Problem nur leider nicht weiter... Jetzt nimmt er die Rule überhaupt nicht mehr an. Sobald das wieder funktioniert, probier ich's aus. ;)
04/01/2013 14:16 PseudoPsycho#10
Hatte ein Support-Ticket an den Webhoster geschrieben und der hat das Problem nun gelöst.
1. gab es einen Fehler bei der Subdomain-Aufschaltung, durch welchen es keine Wildcarddomain war
und 2. war 'ne Endlosschleife in der .htaccess
Daher hier die korrigierte Fassung für alle, die's interessiert:
Code:
RewriteCond %{HTTP_HOST} ^myfiles\.deskt2\.pfweb\.eu$
RewriteCond %{REQUEST_URI} !^/system/files.php
RewriteRule ^(.*)$ /system/files.php?op=print&filepath=$1 [L]
04/01/2013 15:53 Mikesch01#11
Kannst du vllt kurz erklären was

Code:
RewriteCond %{REQUEST_URI} !^/system/files.php
macht^^
04/01/2013 16:26 PseudoPsycho#12
Quote:
Originally Posted by Mikesch01 View Post
Kannst du vllt kurz erklären was

Code:
RewriteCond %{REQUEST_URI} !^/system/files.php
macht^^
Nunja, ich leite ja zu system/files.php weiter.
Dies unterbindet schlichtweg die Endlosschleife, die ansonsten entsteht.