como fazer essa regra de reescrita de htacess parar de falhar por causa do parâmetro final

1

Eu tenho esta regra de reescrita de URLs

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

basicamente, basta remover "/ send-your-request" do URL (ou seja, reescrevê-lo com parâmetros de string de consulta do domínio, por exemplo

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

é reescrito para:

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

Nesse caso, funciona, mas se eu adicionar o último parâmetro, ele pára de funcionar

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

Alguém pode me dizer uma regra de reescrita melhor que possa manipular todos os parâmetros da string de consulta?

EDITAR aqui estão minhas outras regras, mas eu tenho "L" no primeiro, então deve parar o processamento certo?

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]
    
por Max Hodges 09.11.2012 / 18:28

1 resposta

0

Resolvido: era uma regra Mod_security projetada para proteger contra injeção. Trabalhando para desativá-lo agora.

SecRule REQUEST_URI "= (?: ogg | gopher | dados | php | zlib | (?: ht | f) tps?): //" \           "captura, id: 340165, t: nenhum, t: urlDecodeUni, t: substituirNulls, t: compressWhiteSpace, t: minúsculas, rev: 275, gravidade: 2, msg: 'Atomicorp.com UNSUPPORTED DELAYED Regras: Uniencoded possível Injeção de Arquivo Remoto tentativa em URI (AE) ', logdata:'% {MATCHED_VAR} '"

    
por 12.11.2012 / 12:13