Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Antwort
 
Themen-Optionen
Alt 20.05.2008, 18:18   Nach oben    #1
Neuer Benutzer
 
Benutzerbild von JavaJim
 
Registriert seit: 04.01.2006
Beiträge: 27
Standard Problem mit mod_rewrite

Hallo,

ich habe in Forum auf phpNuke-Basis laufen und möchte die URL mittels
mod_rewrite in der .htaccess suchmaschinenfreundlicher machen.

Beispiele für meine URLs sind:

http://www.domain.de/modules.php?name=Forum

http://www.domain.de/modules.php?nam...=viewforum&f=2

http://www.domain.de/modules.php?nam...iewtopic&t=887

Was muß ich hierfür in die .htaccess eintragen?
Hab schon eine ganze Zeit rumgetüftelt - aber ohne Erfolg.
Freue und bedanke mich für Tipps!
JavaJim ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.05.2008, 19:47   Nach oben    #2
Projektleiter
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.225
Standard

Das kommt drauf an welches Muster an Aufrufen du haben möchtest. Die werden dann von mod_rewrite dann nur intern dahingehend verborgen, dass sie intern wie links (s. oben) verarbeitet werden.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.05.2008, 20:41   Nach oben    #3
Neuer Benutzer
 
Benutzerbild von JavaJim
 
Registriert seit: 04.01.2006
Beiträge: 27
Standard

Hall Jann,

also sinnvoll wäre z.B.

Hauptindex des Forums:
http://www.domain.de/modules.php?name=Forums&file=index
-> http://www.domain.de/forum

Forum Unterkategorie:
http://www.domain.de/modules.php?nam...=viewforum&f=2
-> http://www.domain.de/forum/[Unterkategorietitel]

http://www.domain.de/modules.php?nam...iewtopic&t=950
-> http://www.domain.de/forum/[Unterkategorietitel]/[Threadtitel]

JavaJim ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.05.2008, 22:38   Nach oben    #4
Projektleiter
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.225
Standard

Nein, das ist vom Ansatz her falsch.
http://www.domain.de/forum/[Unterkategorietitel]/[Threadtitel]
wird zu http://www.domain.de/modules.php?name=Forums&file=viewtopic&t=950



intern wird dem apachen dann beim Aufruf von http://www.domain.de/forum/[Unterkategorietitel]/[Threadtitel]

das hier zum verarbeiten gegeben:
http://www.domain.de/modules.php?name=Forums&file=viewtopic&t=950

Dargestellt im Browser wird aber das, was dort eingegeben wurde.


Das heißt, dass du in deiner Anwendung die links ändern musst!
Lediglich für die interne Verarbeitung wird dann etwas anderes angenommen.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.05.2008, 23:23   Nach oben    #5
Neuer Benutzer
 
Benutzerbild von JavaJim
 
Registriert seit: 04.01.2006
Beiträge: 27
Standard

Hm, vielleicht habe ich ja etwas bei diesem Beispiel falsch verstanden?

Zitat:
Aus der internen, technisch bedingten Adresse

/index.php?gattung=beuteltiere&bezeichnung=opossum

wird so beispielsweise

/beuteltiere/opossum.html

[...]

Eine mögliche Umsetzung des gezeigten Anwendungsfalls als Regulärer Ausdruck für das Apache-Modul mod_rewrite lautet beispielsweise

RewriteEngine on
RewriteRule ^/([a-z]+)/([a-z]+)\.html$ /index.php?gattung=$1&bezeichnung=$2
JavaJim ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.05.2008, 08:34   Nach oben    #6
Erfahrener Benutzer
 
Registriert seit: 27.09.2006
Ort: Radebeul
Beiträge: 404
Standard

Naja,
Alle daten die du als GET Parameter übergeben möchtest, kommen auch in der mit mod_rewrite umgebogenen URL vor. Manchmal sogar noch mehr.
Und weil du ja den titel haben willst, so gibt es vlt ein Kompromiss:

Code:
http://www.domain.de/forum/[Unterkategorietitel]/[ThreadId],[Threadtitel]
daraus kann man dann auch was machen. Nur müsstest du mit PHP halt die richtigen Links generieren!!
__________________
kampfgnom ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.05.2008, 08:41   Nach oben    #7
Projektleiter
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.225
Standard

Zitat:
Zitat von JavaJim Beitrag anzeigen
Hm, vielleicht habe ich ja etwas bei diesem Beispiel falsch verstanden?
Weiß ich nicht - kann ich nicht beurteilen

Also, wenn die Seite
/beuteltiere/opossum.html
aufgerufen wird, dann sorgt das apache-Modul mod_rewrite dafür, dass PHP meint, dass diese Adresse aufgerufen wurde:
/index.php?gattung=beuteltiere&bezeichnung=opossum
sofern die Regel entsprechend gesetzt ist.

Was mod_rewrite aber nicht macht:

Wenn du
/index.php?gattung=beuteltiere&bezeichnung=opossum
direkt aufrufst, dann ändert mod_rewrite daran nichts, denn mod_rewrite verändert die links im HTML nicht! Die links müssen so aufgerufen werden, dass sie dann auch diese Forum haben:
/beuteltiere/opossum.html

Lediglich kurz vor der Verarbeitung von PHP, wenn die Seite aufgerufen wird arbeitet das Modul und gaugelt PHP den Aufruf mit den ganzen Parametern vor.



Ich weiß selbst, dass diese Beschreibung nicht 100%ig korrekt ist, aber sie soll dem Verständnis dienen!
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.06.2008, 18:17   Nach oben    #8
...möp...
 
Benutzerbild von Creativ
 
Registriert seit: 10.10.2005
Ort: Wolfsburg
Beiträge: 78
Standard

Hi,
Ich habe zu dem Thema auch nochmal eine Frage:
Und zwar wenn man /beuteltiere/opossum.html aufruft und das per mod_rewrite zu /index.php?gattung=beuteltiere&bezeichnung=opossum umwandelt, dann geht der html-code in der index.php ja davon aus, das man im verzeichnis beuteltiere ist.
Also wenn ich z.B. ein bild einbinde (<img src="./images/test.jpg" />), dann sucht html die datei in /beuteltiere/ anstatt in /.

Kann ich das irgendwie machen, dass die html-datei auch von dem verzeichnis / ausgeht, und nicht /beuteltiere/?

Ich könnte natürlich bei jedem Link noch die komplette adresse davorsetzen, aber das wäre nur eine notlösung für mich.

Gruß,
Dennis
Creativ ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.06.2008, 18:29   Nach oben    #9
Erfahrener Benutzer
 
Benutzerbild von Bleistift
 
Registriert seit: 31.12.2006
Ort: Zürich
Beiträge: 296
Standard

Zitat:
Zitat von Creativ Beitrag anzeigen
Also wenn ich z.B. ein bild einbinde (<img src="./images/test.jpg" />), dann sucht html die datei in /beuteltiere/ anstatt in /.
Einfach
Code:
<img src="/images/test.jpg" />
__________________
. <-- This is Punkt. Copy Punkt into your signature to help him on his way to world domination.
Bleistift ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.06.2008, 19:20   Nach oben    #10
...möp...
 
Benutzerbild von Creativ
 
Registriert seit: 10.10.2005
Ort: Wolfsburg
Beiträge: 78
Standard

Wenn das Script im Root-Verzeichnis liegt, geht das. Aber sobald das Script in einen Ordner liegt geht das leider nicht mehr.
Creativ ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.06.2008, 21:35   Nach oben    #11
Erfahrener Benutzer
 
Registriert seit: 18.03.2005
Beiträge: 588
Standard

Dann mach es doch so, dass deine Bilder immer in einen festen Ordner liegen und dann geht es auch.
CIX88 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem E-Mails zu senden Jann Hendrik Plauderecke 7 25.05.2007 21:37
Problem mit LaTex (Facharbeit) mouCe Sonstige Programmiersprachen 6 04.12.2006 00:13
Logisches Problem beim einsatz von Ereignissen Prophet Allgemeine Java-Programmierung 19 05.06.2006 22:08
Problem mit Cookie und Reloads... Bookworm PHP-Programmierung 10 13.04.2006 12:09
OSX + Eclipse 3.1 Problem bacarni Eclipse 3 29.07.2005 21:19


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:23 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44