2015-11-12 5 views
1

Как удалить определенную строку запроса из URL?Удалить конкретный запрос с url

У меня есть какой-то действительно старый каталог, который я очистил, положил в новый Сценарий, передал все и эй, теперь он выглядит прекрасным и да, его то, что я хотел. Но когда я проверил старые ссылки и страницы, я нашел последний оставшийся мусор, как это:

http://www.domain.tld/index.php?page=1&cat=18&u_sort=uptime&u_order=asc

http://www.domain.tld/index.php?cat=45

Так я пытался избавиться от них с помощью Htaccess и удаления строк запросов

Tryout 1 - Довольно, но не более возможным добавлять новые ссылки с помощью формы, изменен на:

RewriteEngine On 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^?]*)\? 
RewriteRule (.*) /? [R=301,L] 

Tryout 2 - Довольно тоже попал добавить ссылку, но следующий Windown не работает, так как она добавляется строка запроса, как правило, и получает удален:

RewriteEngine On 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^?]*)\? 
RewriteRule (.*) /$1? [R=301,L] 

Так что теперь эта идея будет просто удалить только эти две строки запроса и пусть все остальное нетронутым. Как это сделать?

http://www.domain.tld/index.php?page=1&cat=18&u_sort=uptime&u_order=asc и http://www.domain.tld/index.php?cat=45

должен быть просто

http://www.domain.tld/

Помощь очень ценится.

ответ

1

Try:

RewriteEngine on 

RewriteCond %{THE_REQUEST} /index\.php\?cat=([^\s]+) [NC] 
RewriteRule^/? [NC,L,R] 
RewriteCond %{THE_REQUEST} /index\.php\?page=([^&]+)&cat=([^&]+)&u_sort=([^&]+)&u_order=([^\s]+) [NC] 
RewriteRule^/? [NC,L,R] 

это будет перенаправлять:

http://example.com/index.php?cat=foo 

или

http://example.com/index.php?page=123&cat=foo&u_sort=bar&u_order=foo 

в

http://example.com 
+0

Спасибо очень MUC h, я попробую! – Caylean

+0

Работал отлично! – Caylean

Смежные вопросы