.htaccess удалить строку запроса, сохраняя URL в стиле SEO

Вопрос:

Можно ли очистить%{QUERY_STRING} не нарушая никакой функциональности того, что ядостигнуто в моем .htaccess файле.

Я хочу запретить пользователям добавлять?foo=bar до конца URL перезаписывает любые предопределенные переменные $ _GET

(external re_write) Пример:

От:example.com/foo/bar/hello/world?test=blah

Для того, чтобы:example.com/foo/bar/hello/world

До сих пор я смог сделать это (внутренне):

От:example.com/foo/bar/hello/world

Для того, чтобы:example.com/index.php?foo=bar&hello=world

.htaccess

# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^GET\s.+\.(?:html?|php|aspx?) [NC]
RewriteRule ^(.+)\.php$ /$1 [R=301,L,NC]

# To externally redirect /dir/index to /dir/
RewriteCond %{THE_REQUEST} ^GET\s((.+)?(\/)?)?(index) [NC]
RewriteRule ^(([^/]+/)*)index$ /$1 [R=301,L,NC]

# To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_URI} !\.php$ [NC]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule . %{REQUEST_URI}.php [L]

# Prevent Rewrite on existing directories, files, and links
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L] #^ - [L]

# To internally rewrite directories as query string
RewriteRule ^([^/=]+)=([^/]*)(/(.+))?\/?$ /$4?$1=$2 [N,QSA]
RewriteRule ^([^/=]+)/([^/=]+)(/(.+))?\/?$ /$4?$1=$2 [N,QSA]
RewriteRule ^([^/=]+)(/(.+))?\/?$ /$3?$1 [N,QSA]

Что я'мы пробовали: -

#if there is a query string
RewriteCond %{QUERY_STRING} ^(.*)$ 
RewriteRule (.*) $1? [R=301,L] #remove query string

#if there is a query string
RewriteCond %{QUERY_STRING} !=""
RewriteRule (.*) $1? [R=301,L] #remove query string

#if there is a query string
RewriteCond %{QUERY_STRING} !=""
RewriteRule ^(.*)$ $1? [R=301,L] #remove query string

Я где-то читал, и испытал это, что применение вышеупомянутого ломает все, что ямы уже сделали. Полностью очистить весь URL, если они замаскированы в переменные $ _GET. Даже вылетает apache 0.o (простите за любой глупый код регулярного выражения или .htaccess, они 're aren 'т мой сильный набор, и большинство из них были фрагменты, которые я нашел на SO)

Это возможно? что-то яя делаю неправильно?

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос