Puncte:0

Este posibil să accesați un șir de interogare modificat într-un RewriteCond *după* aplicarea unui RewriteRule?

drapel cn

Este posibil să accesați un șir de interogare modificat într-un RewriteCond după aplicarea unei reguli de rescriere?

Ceea ce incerc este sa aplic...

RewriteCond %{QUERY_STRING} ^(.*)&?id=([^&]+)&?(.*)$ [NC]
RewriteRule ^/app\.jsp$ /app/%2?%1%3 [R=302]

... pentru a rescrie următoarele adrese URL în altele „drăguțe”. Asta funcționează deja, dar pentru (2) și (3) există încă un "?" și caracterele „%” pe care aș dori să le elimin:

/app.jsp?id=123&b=1 -> /app/123?b=1 (1)
/app.jsp?id=123 -> /app/123? (2)
/app.jsp?b=1&id=123 -> /app/123?b=1& (3)

Ideea mea este să adaug reguli suplimentare condiționale RewriteRule pentru a elimina semnul "?" și caractere „%” din modificat șir de interogare, dar nu știu cum să accesez acesta din urmă în RewriteCond ulterioare. Vă mulțumesc pentru orice indicii.

Puncte:0
drapel cn

Ok, eu am gasit o solutie simpla:

RewriteCond %{QUERY_STRING} ^()id=([^&]+)(.*)$ [NC,OR]
RewriteCond \?%{QUERY_STRING} ^(\?.*)&id=([^&]+)(.*)$ [NC]
RewriteRule ^/app\.jsp$ /app/%2%1%3 [R=302,QSD,L]

Rescrie rezultatele:

/app.jsp?id=123&b=1 -> /app/123?b=1 (1)
/app.jsp?id=123 -> /app/123 (2)
/app.jsp?b=1&id=123 -> /app/123?b=1 (3)
/app.jsp?b=1&id=123&d=2 -> /app/123?b=1&d=2 (4)

Cateva observatii:

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.