Zur Navigation

URL ändern

1 Daniel5 (Gast)

Hallo ich bin neu hier und habe eine Frage an die Profis:

Ich habe z.B folgende URLs
http://meineseite.de/index,php
http://meineseite.de/ordner1/kontakt,php
http://meineseite.de/ordner2/impressum,php
http://meineseite.de/ordner3/unterordner1/seite,php

Kann man per .htaccess diese URLs so umformen das es so aussieht als ob ALLE seiten wie die index.php im ROOT liegen?

also wenn jemand eine der Seiten aufruft gibt er einfach so ein:
http://meineseite.de/index,php
http://meineseite.de/kontakt,php
http://meineseite.de/mpressum,php
http://meineseite.de/seite,php

Und dann würde ich noch gerne wissen wie man die Endung entfernt so das der Besucher am Ende folgendes eingibt:
http://meineseite.de/index
http://meineseite.de/kontakt
http://meineseite.de/mpressum
http://meineseite.de/seite

Danke

18.03.2015 14:29

2 Jörg

Ich habe z.B folgende URLs
http://meineseite.de/index,php
http://meineseite.de/ordner1/kontakt,php
http://meineseite.de/ordner2/impressum,php
http://meineseite.de/ordner3/unterordner1/seite,php

Kann man per .htaccess diese URLs so umformen das es so aussieht als ob ALLE seiten wie die index.php im ROOT liegen?

Nicht mit einer einfachen Regel. Aus dem Dateinamen "seite.php" ist ja nicht ersichtlich, in welchem Unterverzeichnis diese liegt.

18.03.2015 16:07

3 Daniel5 (Gast)

Ok also würde das nicht gehen, schade.

Ich müßte dann alle Dateine in das ROOT setzen wo die index.php bereits liegt.

Ich persönlich mag das optisch nicht so, weil dann so viele datein im Root liegen.
Ich habe halt orderner für jeden bereich, das ich micht zurechtfinde.

Und das andere, das man die URL ohne die dateiendung .php aufruft, geht das auch nicht per .htaccess ?

20.03.2015 12:04

4 Jörg

Und das andere, das man die URL ohne die dateiendung .php aufruft, geht das auch nicht per .htaccess ?

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ $1\.php

Das sollte (ausnahmslos) alle URLs rewriten, die auf keine Datei und kein Verzeichnis matchen

20.03.2015 14:36

5 Daniel5 (Gast)

Das mit RewriteCond hat jetzt gernicht geklappt.

Ich habe www.seite.de/dir/kontakt
aufgerufen und bin dann auf die Startseite geflogen.

21.03.2015 13:26

6 Jörg

Hast du noch weitere Rules oder Redirects in der .htaccess Datei stehen?

21.03.2015 14:45

7 Daniel5 (Gast)

Ja da ist ne ganze menge drin, rund 6kb.

Ich hab den code von dir in diesen bereich ganz oben rein gesetzt:
<IfModule mod_rewrite.c>

hier hats dann noch 30-40
Redirect permanent ...
drin ansonsten ist hier nichts anderes drin.

Normalerweise schaffe ich es immer der Server in die Knie zu treiben, aber
mit deinem Code tut sich garnichts, es wird auf die startseite umgeleitet.

24.03.2015 00:26

8 Daniel5 (Gast)

Habe gerade in meine error-logs reingeschaut, da wird beim aufruf:
domain.de/web/kontakt
ein 404 ausgelößt!

mit dem .php am ende geht es nachwievor.
domain.de/web/kontakt.php

24.03.2015 00:29

9 Jörg

Habe gerade in meine error-logs reingeschaut, da wird beim aufruf:
domain.de/web/kontakt
ein 404 ausgelößt!

Werden 404er automatisch auf die Startseite weitergeleitet?

Wenn nicht, dann funkt noch eine andere Weiterleitung dazwischen.

hier hats dann noch 30-40
Redirect permanent ...
drin ansonsten ist hier nichts anderes drin.

Auch keine RewriteRule? In so einem Fall könnte vielleicht noch ein Last-Flag helfen:

RewriteRule ^(.+)$ $1\.php [L]

Mannchmal wird auch noch eine RewriteBase-Angabe benötigt. Im Falle einer .htaccess Datei im DocumentRoot-Verzeichnis:

RewriteBase /

Ansonsten würde ich mal testweise eine .htaccess Datei probieren, die nur den Code aus Beitrag 4 enthält - funktioniert der Rewrite dann?


Edit:

falls es in dem Unterverzeichnis web eine .htaccess Datei gibt, könnte auch deren Inhalt relevant für eine Problemlösung sein

24.03.2015 09:19 | geändert: 24.03.2015 09:21

Beitrag schreiben (als Gast)





[BBCode-Hilfe]