Entfernen der verbleibenden Endzeichenfolge nach RewriteRule

472
Heather Carrigan Valentin

Ich habe alles ausprobiert, kann aber anscheinend nicht alles richtig machen :( Ich habe über 800 URLs und muss sie umschreiben, um auf eine einfache PDF-Datei zu verweisen. Derzeit habe ich Links zu:

http://subdomain.mydomain.com/?type=pdf&id=id123 http://subdomain.mydomain.com/?type=epub&id=id123 

und ich brauche das:

http://subdomain.mydomain.com/pdf/id123.pdf http://subdomain.mydomain.com/epub/id123.epub 

Ich habe die Referenzseiten von htaccess und rewriterule durchgelesen, aber mir fehlt noch etwas. Ich kann die Endzeichenfolge nicht entfernen (? Type = pdf & id = id123)

Das ist was ich habe:

RewriteCond % ^type=pdf&id=(.*)$  RewriteRule /?$ pdf/%1.pdf 

Und natürlich gibt es falsch aus:

 http://subdomain.mydomain.com/pdf/id1234.pdf?type=pdf&id=id123 

Ich kann nicht loswerden ? Type = pdf & id = id123 am Ende

Jede Hilfe in die richtige Richtung wäre sehr dankbar.

0

1 Antwort auf die Frage

0
meuh

Versuchen Sie, die Flag- Abfragezeichenfolge zu löschen [QSD] :

RewriteRule /?$ pdf/%1.pdf [QSD] 
Danke, aber das scheint keinen Unterschied zu machen :( Ich kann die Weiterleitung über .htaccess nicht lokal zum Laufen bringen - nichts passiert Heather Carrigan Valentin vor 5 Jahren 0
Sie sollten die Abfragezeichenfolge auch ersetzen können, indem Sie die Ersetzung mit "?" (Leere Abfragezeichenfolge) beenden. Um Debug-Ausgaben für das Umschreiben zu erhalten, setzen Sie die Konfiguration auf "LogLevel warn rewrite: trace8". meuh vor 5 Jahren 0