Назад | Перейти на главную страницу

как заставить это правило перезаписи htaccess перестать работать из-за последнего параметра

У меня есть это правило перезаписи URL

RewriteRule ^(send-your-request.*)$ / [NC,L,QSA,R=301]

он должен просто удалить "/ send-your-request" из URL-адреса (т.е. переписать его с параметрами строки запроса из домена, т.е.

http://example.com/send-your-request/?a_aid=rocketnews24&pname=just%20a%20test

переписывается на:

http://example.com/?a_aid=rocketnews24&pname=just%20a%20test

В этом случае он работает, но если я добавлю последний параметр, он перестанет работать

http://example.com/send-your-request/?a_aid=rocketnews24&pname=just%20a%20test&plink=http%3A%2F%2Fradio-eva.jp%2Fshop%2Fproducts%2Fdetail.php%3Fproduct_id%3D82

Может ли кто-нибудь подсказать мне лучшее правило перезаписи, которое может обрабатывать все параметры строки запроса?

РЕДАКТИРОВАТЬ вот и другие мои правила, но у меня на первом стоит буква "L", поэтому обработка должна прекратиться, верно?

RewriteRule ^(send-your-request.*)$ / [NC,QSA,R=301,L]
Redirect 301 /products http://whiterabbitexpress.com/
RewriteRule ^index\.php$ - [L]
RewriteCond %{QUERY_STRING} ^(.*)q=(.*)$
RewriteRule ^(.*)$ $1?%1s=%2 [L,R=301] 
RewriteRule ^catalogsearch/result/?$ / [NC,QSA,L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

Решено: это было правило Mod_security, предназначенное для защиты от инъекций. Сейчас работаю над его отключением.

SecRule REQUEST_URI "= (?: Ogg | gopher | data | php | zlib | (?: Ht | f) tps?): // захват" \ ", id: 340165, t: none, t: urlDecodeUni, t: replaceNulls , t: compressWhiteSpace, t: нижний регистр, rev: 275, серьезность: 2, msg: 'Atomicorp.com UNSUPPORTED DELAYED Rules: Uniencoded possible Remote File Injection in URI (AE)', logdata: '% {MATCHED_VAR}' "