Mal wieder aus URL Parameter auslesen ... Verständnisfrage

Eines der wichtigsten Anwendungsgebiete von mod_rewrite ist das umschreiben von dynamischen in statische URLs um "suchmaschinenfreundliche URLs" zu erzeugen. Aber was ist besser fürs Ranking? http://www.url.com/12_2.htm, http://www.url.com/url,12,2.htm oder doch lieber http://www.url.com/12/2/url/ Fragen zum URL-Design werden hier diskutiert.

Moderator: Super-Mod

Mal wieder aus URL Parameter auslesen ... Verständnisfrage

Beitragvon vern » 28.07.2006 15:25

Hallo ihr,

hab eine Frage.

Momentan habe ich ein Script, welches folgendermaßen zu erreichen ist:

http://www.domain.de/services/termine/termine.php?id=5

Nun soll das Script zur Suchmaschinenoptimierung folgendermaßen erreichbar sein:
http://www.domain.de/services/termine/2 ... s-termins/

Nun komm ich mit den hier übergebenen Parametern ja recht unzuverlässig und ebenfalls recht unperformant auf eine id 5.

Habt Ihr da evtl. Vorschläge?

Kann man das so machen?
http://www.domain.de/services/termine/2 ... -termins/5

Oder gibts da vielleicht noch andere Möglichkeiten?

Vielen Dank im Vorraus

vern
Wer? Ich? Ne, ich war das nich!
vern
.
.
 
Beiträge: 8
Registriert: 28.07.2006 15:10

Beitragvon Bob » 28.07.2006 15:32

Zum Beispiel. Oder eben /services/termine/2006/06/28/der-name-des-termins-5.html, oder irgendeine andere Variation.
Bob
Moderator
Moderator
 
Beiträge: 5044
Registriert: 01.10.2004 13:10

Beitragvon vern » 28.07.2006 15:52

Okay, wollt nur ausschließen, dass ich da jetzt das Rad neu erfinde, obwohl es eine Standardlösung gibt ...

Vielen Dank

Gibts vielleicht ein Beispiel für meinen Fall?
Wer? Ich? Ne, ich war das nich!
vern
.
.
 
Beiträge: 8
Registriert: 28.07.2006 15:10

Beitragvon vern » 02.08.2006 16:42

Kann mir noch jemand einen Tipp zu einer Rule geben wie ich nun aus:

http://www.domain.de/services/termine/2 ... -termins/5

http://www.domain.de/services/termine/termine.php?id=5

erstelle?

Meine Kenntisse über reguläre Ausdrücke sind ziemlich begrenzt.

Erster Lösungsansatz:
RewriteRule ^/([0-9]+)/([0-9]+)/([0-9]+)/ ... /$ /termine.php?id=5

Vielen Dank im Vorraus
Wer? Ich? Ne, ich war das nich!
vern
.
.
 
Beiträge: 8
Registriert: 28.07.2006 15:10

Beitragvon Bob » 03.08.2006 12:22

Abhängig von dem Ort, wo du deine RewriteRule einsetzt (dass RewriteEngine on irgendwo definirt worden ist, davon gehe ich einmal aus), musst du im Pattern (linker Teil) den führenden Slash entfernen. Da du die anderen Werte nicht benötigst, könnte man aucch so vorgehen::

Code: Alles auswählen
RewriteRule /([0-9]+)$ /termine.php?id=$1 [L]
Alles, was vor / und 0-9 am Ende steht, fällt gewissermaßen runter.

Grüße
Robert
Bob
Moderator
Moderator
 
Beiträge: 5044
Registriert: 01.10.2004 13:10

Beitragvon vern » 03.08.2006 22:48

Vielen Dank!

Das klappt wunderbar ...

Ich habe jetzt in dem Ordner zwei Scripte.

Einmal Termine und einmal Tagungen

Könnte man aus

http://www.domain.de/services/termine/2 ... -termins/5

das /termine/ rausfiltern um es an termine.php

und eben aus

http://www.domain.de/services/tagungen/ ... s-tagung/5

und das /tagungen/ an tagungen.php weiterleiten?

Ich hab so ziemlich jede Möglichkeit durchprobiert, es selbst aufzubauen, aber es will nicht klappen ...

:cry:
Wer? Ich? Ne, ich war das nich!
vern
.
.
 
Beiträge: 8
Registriert: 28.07.2006 15:10

Beitragvon Bob » 11.08.2006 00:57

Du musst einfach dann einen Teil von links an notieren, für die Mitte kannst du dann auch .* oder das ganze präzise notieren.

Code: Alles auswählen
RewriteRule ^services/termine/[^/]+/[^/]+/[^/]+/[^/]+/([0-9]+)$ /termine.php?id=$1 [L]
RewriteRule ^services/tagungen/[^/]+/[^/]+/[^/]+/[^/]+/([0-9]+)$ /tagungen.php?id=$1 [L]
Bob
Moderator
Moderator
 
Beiträge: 5044
Registriert: 01.10.2004 13:10

Beitragvon vern » 24.11.2009 18:12

Guten Tag,

nach nun drei Jahren :roll: habe ich doch tatsächlich wieder ein ähnliches Problem und wieder keine Lösung.
Ich dacht, ich bleib mal hier im Thread, da es sich ja wieder um Folder-Weiterleitungen handelt.

Folgendes:

Physikalisch sieht die URL so aus:

http://www.domain.de/Modules/ModuleName ... hp?param=1

ModuleName wär z.B. "Home" oder "Contact" - und noch einige andere

Viel schicker wärs nun, wenn die URL so aussähe:

http://www.domain.de/modulename/param

und entsprechend umleiten würde...

Könnt mir da jemand behilflich sein?
Wär großartig!
Vielen Dank im Vorraus
Wer? Ich? Ne, ich war das nich!
vern
.
.
 
Beiträge: 8
Registriert: 28.07.2006 15:10

Beitragvon Gumbo » 24.11.2009 18:28

Geht es etwas genauer?
Markus Wulftange
Gumbo
Moderator
Moderator
 
Beiträge: 5019
Registriert: 07.01.2005 01:18
Wohnort: Trier

Beitragvon vern » 24.11.2009 21:22

Ähmm, sag, wie denn noch genauer?
In welche Richtung genauer?

Ich dachte, ich hätte soweit alles erläutert...

Sag, welche Infos noch notwendig wären und ich tippe sofort

Als denn
vern
Wer? Ich? Ne, ich war das nich!
vern
.
.
 
Beiträge: 8
Registriert: 28.07.2006 15:10

Beitragvon Gumbo » 26.11.2009 17:54

Welche Bestandteile sind fix, welche variabel und welche Werte können sie haben?
Markus Wulftange
Gumbo
Moderator
Moderator
 
Beiträge: 5019
Registriert: 07.01.2005 01:18
Wohnort: Trier

Beitragvon vern » 30.11.2009 11:08

Okay, verstanden ...

Die Url sieht wie gesagt physikalisch so aus:

http://www.domain.de/Modules/ModuleName/Application/index.php?param=1

Rot sind fix
Blau sind variable

So, als Verzeichnisbau:

www.domain.de
+ Modules
__+ Home
____+ Application
______index.php
__+ Contact
____+ Application
______index.php
__+ Company
____+ Application
______index.php
__+ Sitemap
____+ Application
______index.php
__+ etc ...
____+ Application
______index.php

Die Params wären sowas wie id=3 ... Standardkrams

Ja, und fein wärs, wenn es eben so aufrufbar wäre:
http://www.domain.de/ModuleName

Kann man das an der Stelle auch case-un-sensitive setzen?
Also, dass auch:
http://www.domain.de/modulename
funktioniert?
Wer? Ich? Ne, ich war das nich!
vern
.
.
 
Beiträge: 8
Registriert: 28.07.2006 15:10

Beitragvon Gumbo » 03.12.2009 20:21

Folgendes kannst du machen:
Code: Alles auswählen
RewriteRule ^([^/]+)$ Modules/$1/Application/index.php
Markus Wulftange
Gumbo
Moderator
Moderator
 
Beiträge: 5019
Registriert: 07.01.2005 01:18
Wohnort: Trier


Zurück zu URL-Design

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste

cron