2010-12-03 8 views
0

Ich muss einen bestimmten Teil meiner URLs entfernen, die generiert werden und .htaccess verwenden möchten.Entfernen von "& Itemid = XX" aus meinen URLs mit .htaccess

Einige Links werden nach dem .html mit "& Itemid = XX" angehängt.

Beispiel: http://www.site.com/conferences-and-events.html&Itemid=XX

XX könnte eine Ziffer oder vier sein, so denke ich, dass ich für diesen Teil eine Wild Card benötigen. Ich weiß, dass andere Fragen im Zusammenhang mit dem Entfernen bestimmter Teile von URLs mit .htaccess beantwortet wurden, aber ich kann nicht herausfinden, wie ich meinen spezifischen String entfernen kann. Jede Hilfe wäre willkommen und sorry dafür, dass sie überflüssig und dicht ist.

Antwort

1

Sie wollen URL rewriting dafür verwenden, sollte so etwas funktionieren;

RewriteEngine On 
RewriteRule (.*)&Itemid=\d{1,4}(.*) $1$2 [R] 

Erläuterung: Dieser reguläre Ausdruck paßt alles ((.*)) von &Itemid= [1 bis 4 Dezimalstellen], gefolgt von irgendetwas (eine anderen (.*)) gefolgt, und Umleitungen ([R]) mit dem ersten nichts mit dem zweit etwas verketteten, damit die &Itemid=xx Teil herausnehmen.

+0

Vielen Dank für Ihre Hilfe. Ich hätte es ein bisschen besser ausdrücken sollen. Die Itemid-Nummer könnte irgendwo zwischen 1 und 4 Ziffern sein, nicht nur 1 oder 4. Ich schätze, das könnte die Zeichenfolge ein wenig verändern. Danke nochmal! –

+0

@Alex '\ d' bedeutet eine Dezimalstelle, und' {1,4} 'bedeutet eine beliebige Zahl zwischen 1 und einschließlich 4. Sie könnten diese Regex-Referenz als wertvolle Ressource finden: http://www.regular-expressions.info/reference.html – Aistina