2012-05-22 10 views
6

Ich habe Schwierigkeiten, entsprechende 301-Weiterleitungen für eine Website zu erstellen, die ursprünglich mit Abfragezeichenfolgen erstellt wurde. Die alte URL-Struktur sieht wie folgt aus:Entfernen von Abfragezeichenfolgen von 301-Weiterleitung

http://www.oldsite.com/about/index.cfm?fuseaction=cor_av&artID=5049 

ich die gesamte Unterordner (mit dem Namen ‚über‘) auf eine neue Seite auf der neuen Domain umleiten möchten. Die URL des neuen Domain sieht wie folgt aus:

http://www.newsite.com/info 

Also, ich eine Umleitung einrichten, die wie folgt aussieht:

redirectMatch 301 ^/about/ http://www.newsite.com/info 

Es wird Umleitung ganz gut, aber es ist die ursprüngliche URL Schnur befestigt zu halten, so die neue URL endet wie diese in einem Browser suchen:

http://www.newsite.com/info/?fuseaction=cor_av&artID=5049 

ich bin definitiv nicht genug von einem Apache/301 Experten ot weiß, wie diese zu beheben. Ich will nur alles ausziehen von dem? auf.

Wirklich zu schätzen jede Hilfe.

Antwort

28

zwei Möglichkeiten:

redirectMatch 301 ^/about/ http://www.newsite.com/info? 

oder:

RewriteEngine on 
RewriteRule ^about/(.*) http://www.newsite.com/info? [L,R=301] 

Fragezeichen am Ende scheint die kritische Bit zu sein. Zweite sieht ein wenig sauberer (erstes ein Fragezeichen am Ende der URL verlässt)

+0

Danke! Das hat für mich funktioniert. – Ash

+3

Beachten Sie, dass Sie bei Apache> = 2.4 das QSD-Flag verwenden können, anstatt ein End-Fragezeichen hinzuzufügen: 'RewriteRule^über /(.*) http://www.newsite.com/info [' QSD', L , R = 301] ' –

0

Versuchen diesen Code in das .htaccess hinzuzufügen, die für oldsite.com angegeben:

RewriteCond %{REQUEST_URI} ^/about/index.cfm$ 
RewriteRule ^(.+) http://www.newsite.com/info/ [R=301,QSA] 

Follow-up?

+1

Nein, die' QSA' ** a ** verwendet die alte Abfragezeichenfolge an die neue URL. Um ** d ** iscard es, verwenden Sie das Flag ist "QSD" (apache> = 2.4) oder fügen Sie einfach ein '?' Wie in der angenommenen Antwort. Siehe [Apache RewriteRule Flags] (http://httpd.apache.org/docs/2.4/rewrite/flags.html#flag_qsa) – dennis

Verwandte Themen