URL-Rewriting Problem

Alles, was den Apache betrifft, kann hier besprochen werden.

URL-Rewriting Problem

Postby svenni80 » 15. May 2011 15:44

Hallo Leute!

Habe folgenden Code:
Code: Select all
RewriteCond %{REQUEST_FILENAME}\.htm -f
RewriteRule ^(.*)$ $1.htm


Problem: Gebe ich example.com/hey/leute/wie/gehts ein, will der Server statt auf die Datei gehts.htm aufs Verzeichnis gehts zugreifen ...
Habe auch schon alles Mögliche über
Code: Select all
%{REQUEST_FILENAME} -d
, aber komme nicht weiter. :(
Bräuchte quasi die Anweisung "die DATEI" oder "Schrägstrich weg", oder?

Ist das Ganze vielleicht auch über REQUEST_URI möglich? Weil: Über REQUEST_FILENAME wird ja die htm-Datei wirklich in eine Datei ohne Endung umbenannt, oder? Und das soll ja nicht sein, es geht ja nur um die URL.

Danke euch schon mal.

Grüße
Sven
svenni80
 
Posts: 5
Joined: 15. May 2011 15:30

Nachtrag

Postby svenni80 » 15. May 2011 16:14

Habs auch shcon mit Multiviews probiert, aber das scheint nicht zu funktionieren, einmal weils mehrere Unterverzeichnisse sind, einmal weils mehrere Dateitypen mit gehts (gehts.css, gehts.jpg, ...) gibt. Ist vielleicht nichtsdestrotrotz diese Lösung einfacher?
svenni80
 
Posts: 5
Joined: 15. May 2011 15:30

Re: URL-Rewriting Problem

Postby Nobbie » 15. May 2011 21:22

svenni80 wrote:Bräuchte quasi die Anweisung "die DATEI" oder "Schrägstrich weg", oder?


http://httpd.apache.org/docs/2.2/mod/mo ... ctoryslash
Nobbie
 
Posts: 8780
Joined: 09. March 2008 13:04

Re: URL-Rewriting Problem

Postby svenni80 » 16. May 2011 15:59

Bitte mal an anderer Stelle verfolgen ...

Vielleicht hier ne Idee?
svenni80
 
Posts: 5
Joined: 15. May 2011 15:30

Re: URL-Rewriting Problem

Postby Nobbie » 17. May 2011 13:05

Da kann ich nicht antworten - und cross-antworten tu ich mit absoluter Sicherheit nicht.
Nobbie
 
Posts: 8780
Joined: 09. March 2008 13:04

Re: URL-Rewriting Problem

Postby svenni80 » 17. May 2011 15:05

Also es wird nach wie vor jedes Mal fälschlicherweise versucht, das Verzeichnis zu öffnen, d. h. ich geb example.com/hey/leute ein, es wird - obwohl ichs gar nicht eingegeben hab!?!? - der Schrägstrich hinten dran gefügt und eben versucht das (ja auch vorhandene) Verzeichnis zu öffnen.
Sieht so aus, als ob vorrangig geprüft wird "Ist 'leute' ein Verzeichnis?" und wenn ja, dann "ohne Rücksicht auf Verluste" versuchen zu öffnen ...

Geb ich example.com/hey/leute ein und gibt es NICHT noch mal das Verzeichnis leute, sondern NUR die Datei leute.htm, klappts!
svenni80
 
Posts: 5
Joined: 15. May 2011 15:30

Re: URL-Rewriting Problem

Postby Nobbie » 17. May 2011 15:27

svenni80 wrote:Also es wird nach wie vor jedes Mal fälschlicherweise versucht, das Verzeichnis zu öffnen, d. h. ich geb example.com/hey/leute ein, es wird - obwohl ichs gar nicht eingegeben hab!?!? - der Schrägstrich hinten dran gefügt


Hast Du die Direktive aus der Dokumentation richtig eingebaut (DirectorySlash)?
Nobbie
 
Posts: 8780
Joined: 09. March 2008 13:04

Re: URL-Rewriting Problem

Postby svenni80 » 17. May 2011 18:47

Also ich hab diesen Ausgangscode (ganze .htaccess):
Code: Select all
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME}\.htm -f
RewriteRule ^(.*)$ $1.htm

Der Code funktioniert auch, allerdings eben nur für Dateien, die kein gleichnamiges Verzeichnis haben, sondern einzeln sind!?
Dieser soll jetzt dahingehend erweitert werden, dass nach EIngabe von example.com/hey/leute NICHT noch der Schrägstrich hinten dran kommt und versucht wird, das (zwar vorhandene, aber unwichtige) Verzeichnis leute zu öffnen, SONDERN die Datei leute.htm geöffnet wird!

Die Direktive hab ich wie folgt eingebaut (wieder ganze .htaccess), was allerdings zur 505 führt:
Code: Select all
RewriteEngine On
RewriteBase /

DirectorySlash Off
RewriteCond %{REQUEST_FILENAME}\.htm -f
RewriteCond %{REQUEST_URI} !^(.htm)
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^(.*)$ $1.htm

Wollte gern irgendwie wie folgt ansetzen, doch komme nicht weiter :| :
Code: Select all
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME}\.htm -f
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.*)$ $1.htm
svenni80
 
Posts: 5
Joined: 15. May 2011 15:30

Re: URL-Rewriting Problem

Postby Nobbie » 17. May 2011 22:45

svenni80 wrote:Die Direktive hab ich wie folgt eingebaut (wieder ganze .htaccess), was allerdings zur 505 führt:


Und dann hast natürlich selbstverständlich im Error_Log nachgeschaut, was die Ursache für diesen Fehler ist - hast halt nur vergessen, uns das Ergebnis der Recherche hier im Forum zu zeigen. NIcht wahr?!
Nobbie
 
Posts: 8780
Joined: 09. March 2008 13:04


Return to Apache

Who is online

Users browsing this forum: No registered users and 1 guest