2016-06-09 3 views
0

ich URLs möchten, die von der Struktur sind /news/categories/CATEGORY-/news/categories/dynamic-categories.php?category=CATEGORY.htaccess-Datei Teile fallen, wenn sie nicht mit [R]

zu umleiten Und ich habe dies für die meisten Situationen arbeiten diese .htaccess-Datei Regel:

RewriteRule ^news/categories/([a-zA-Z0-9\s]+)/?$ /news/categories/dynamic-categories.php?category=$1 [L] 

In bestimmten Situationen haben die Kategorienamen jedoch Leerzeichen, und diese fallen auseinander. Stuff wie /news/categories/with%20space wird umgeschrieben, wo ich nur die Kategorie GET-Parameter mit dem Wert with sehen.

Allerdings, eine seltsame Sache, um das hinzuzufügen, wenn ich das Umleitungsflag ([R]) darin hinzufügen, funktioniert die Regel (obwohl mit einer Umleitung ...) und die gesamte Kategorie (with space) wird übergeben.

Was muss ich hier ändern?

+0

Versuchen Sie: 'RewriteRule^Nachrichten/Kategorien/([^ /] +) /? $ Nachrichten/Kategorien/dynamic-categories.php? Kategorie = $ 1 [L, QSA]' – anubhava

+0

@anubhava Das hat es nicht getan entweder. Es kommt immer noch für mich als das einzige Wort durch. – Tyllyn

Antwort

0

Dies scheint tatsächlich ein Artefakt von einigen anderen Dingen zu sein.

Die PHP-Seite, auf die wir verweisen, ist über ein CMS eingebettet, und es sieht so aus, als ob die Abfragezeichenfolgen während einer dieser Übertragungsstufen abgezogen werden. Die Rewrite-Regel war die ganze Zeit richtig.