Seite 1 von 1

mod rewrite - URLs als Ordnerstruktur

Verfasst: 18.10.2008, 20:24
von assmaje
Hi Leute,

bin noch n Anfänger in Sachen SEO... wie kann ich die Unterseiten auf meiner Website https://psp-spielebase.de von der Form, in der sie jetzt sind (psp-spielebase.de/index.php?section=beispiel), in eine Ordnerstruktur umwandeln (psp-spielebase.de/beispiel)?

Danke schon mal!!

Verfasst:
von

Verfasst: 18.10.2008, 21:22
von huah
Es müsste so funktionieren:

Code: Alles auswählen

RewriteEngine On
RewriteRule ^(.*)/$ /index.php?section=$1
Der Aufruf von domain.de/bla leitet intern an domain.de/index.php?section=bla weiter.

Verfasst: 18.10.2008, 22:02
von assmaje
Funktioniert leider nicht... :(

Code: Alles auswählen

RewriteEngine On

RewriteCond %{HTTP_HOST} =psp-spielebase.de
RewriteRule (.*) http://www.psp-spielebase.de/$1 [L,R=301]

RewriteRule ^(.*)/$ /index.php?section=$1
https://www.psp-spielebase.de/

Verfasst:
von

Verfasst: 19.10.2008, 02:14
von huah
Ich habs verplant, die vorherige Version geht nur mit Slash am Ende ( https://www.psp-spielebase.de/wallpaper/ ) - so müsste es aber gehen:

Code: Alles auswählen

RewriteRule ^(.*)$ /index.php?section=$1
Ansonsten weiss ich auf die Schnelle auch nicht weiter.

Verfasst: 19.10.2008, 11:43
von assmaje
Jetzt geht gar nichts mehr... (500 Internal Sever Error)

Übrigens hat die Methode mit dem Slash am Ende auch nicht funktioniert, als ich zum Beispiel https://www.psp-spielebase.de/demos/ eingegeben hatte, wurde zwar die entsprechende Seite angezeigt, aber ohne CSS. Und das Ganze soll auch klappen, wenn ich innerhalb meiner Seite auf einen Link (<a href="index.php?section=demos">...</a>) klicke. Oder muss ich die Links umschreiben? Dann funktioniert aber mein PHP-Code nicht mehr...

Hoffentlich kann mir jemand helfen. :-?

Danke!!

Code: Alles auswählen

RewriteEngine On

RewriteCond %&#123;HTTP_HOST&#125; =psp-spielebase.de
RewriteRule &#40;.*&#41; http&#58;//www.psp-spielebase.de/$1 &#91;L,R=301&#93;

RewriteRule ^&#40;.*&#41;$ /index.php?section=$1

Verfasst: 19.10.2008, 12:26
von Network
Warum gibst du der CSS Datei nicht einen kompletten Pfad?

https://www.domain.de/style.css
oder
/style.css

Gruß Ludwig

Verfasst: 19.10.2008, 12:31
von assmaje
Versteh ich nicht... was hat das jetzt mit dem CSS zu tun?

Verfasst: 19.10.2008, 12:53
von Network
Mit der Url: https://www.psp-spielebase.de/demos/
gaukelst du ja vor, das sich die Internetseite in einem anderen Ordner befindet.

Wenn du diese Url nun aufrufst, und die CSS Datei befindet sich im Rootverzeichnis, stimmt der Pfad zur CSS Datei nicht mehr und es wird demzufolge auch kein CSS angezeigt.

Kannst es ja mal testen.

Verfasst: 19.10.2008, 13:23
von assmaje
Das ist die erste Variante (https://www.psp-spielebase.de/demos/), ich versuche aber die zweite Variante (https://www.psp-spielebase.de/demos) zum laufen zu bringen. Warum funktioniert sie nicht (500 Internal Sever Error)? Weiter oben habe ich auch noch geschrieben:
assmaje hat geschrieben:Und das Ganze soll auch klappen, wenn ich innerhalb meiner Seite auf einen Link (<a href="index.php?section=demos">...</a>) klicke.
https://www.psp-spielebase.de

.htaccess:

Code: Alles auswählen

RewriteEngine On

RewriteCond %&#123;HTTP_HOST&#125; =psp-spielebase.de
RewriteRule &#40;.*&#41; http&#58;//www.psp-spielebase.de/$1 &#91;L,R=301&#93;

RewriteRule ^&#40;.*&#41;$ /index.php?section=$1
Hab mich vorher vielleicht ein bisschen unklar ausgedrückt. :)

Verfasst: 19.10.2008, 17:26
von huah
assmaje hat geschrieben:Weiter oben habe ich auch noch geschrieben:
assmaje hat geschrieben:Und das Ganze soll auch klappen, wenn ich innerhalb meiner Seite auf einen Link (<a href="index.php?section=demos">...</a>) klicke.
Diesen Link sollte man natürlich per 301 auf die richtige Variante umleiten. Zusätzlich müssen alle Links auf der Site geändert werden - alles andere ist Schwachsinn, ausser man lässt es so wie es ist.

Vielleicht hilft Dir das weiter: https://www.modrewrite.de/mod_rewrite.e ... iele.phtml

... und was Network zu den Pfadangaben meinte, muss Du auch berücksichtigen.

Verfasst: 19.10.2008, 19:13
von assmaje
Die Pfadangabe zur CSS-Datei habe ich geändert. Wieso bekomm ich einen 500 Internal Server Error (bei der Variante ohne Slash am Ende)?

Code: Alles auswählen

RewriteEngine On 

RewriteCond %&#123;HTTP_HOST&#125; =psp-spielebase.de 
RewriteRule &#40;.*&#41; http&#58;//www.psp-spielebase.de/$1 &#91;L,R=301&#93; 

RewriteRule ^&#40;.*&#41;$ /index.php?page=$1
EDIT:
Oder könnte ich auch https://www.psp-spielebase.de/page=demos auf https://www.psp-spielebase.de/demos.html umschreiben?

Verfasst: 20.10.2008, 16:02
von huah
assmaje hat geschrieben: Oder könnte ich auch https://www.psp-spielebase.de/page=demos auf https://www.psp-spielebase.de/demos.html umschreiben?
Ja:

Code: Alles auswählen

RewriteRule ^&#40;.*&#41;.html$ /index.php?page=$1
Wie man es ohne Dateiendungen hinbekommt, würde mich allerdings auch mal interessieren...

Verfasst: 20.10.2008, 17:50
von assmaje
Danke!! :)

Aber wie geht das jetzt mit der 301-Umleitung?