>  기사  >  백엔드 개발  >  RewriteCond는 의사 정적 규칙에서 여러 매개변수를 어떻게 얻습니까?

RewriteCond는 의사 정적 규칙에서 여러 매개변수를 어떻게 얻습니까?

WBOY
WBOY원래의
2016-09-01 00:20:121459검색

다음 양식 규칙을 사용할 수 있습니다.
/index.php?m=search&c=index&s=1&t=1&k=Keywords
경로를 의사에서
/search?s=로 전달하고 싶습니다. 정적 형식 1&t=1&k=키워드

다음 방법을 사용하면 하나의 매개변수 값만 가져올 수 있습니다
RewriteCond %{QUERY_STRING} ^k=(.+)$
RewriteRule ^search$ /index.php?m=search&c=index... &k=%1

다음 방법을 사용하여 여러 매개변수를 얻는 경우 매개변수의 순서가 고정됩니다.
RewriteCond %{QUERY_STRING} ^k=(.+)&s= (.+)&c=(.+ )$
RewriteRule ^search$ /index.php?m=search&c=index...&k=%1&s=%2&c=%3

다음 방법을 사용하면 보안 위험이 있으며 매개 변수 수를 제한할 수 없습니다
RewriteRule ^search$ /index.php?m=search&c=index [L,QSA]

전문가에게 좋은 해결책이 있는지 물어보세요.

답글 내용:

다음 양식 규칙을 사용할 수 있습니다.
/index.php?m=search&c=index&s=1&t=1&k=Keywords
경로를 의사에서
/search?s=로 전달하고 싶습니다. 정적 형식 1&t=1&k=키워드

다음 방법을 사용하면 하나의 매개변수 값만 가져올 수 있습니다
RewriteCond %{QUERY_STRING} ^k=(.+)$
RewriteRule ^search$ /index.php?m=search&c=index... &k=%1

다음 방법을 사용하여 여러 매개변수를 얻는 경우 매개변수의 순서가 고정됩니다.
RewriteCond %{QUERY_STRING} ^k=(.+)&s= (.+)&c=(.+ )$
RewriteRule ^search$ /index.php?m=search&c=index...&k=%1&s=%2&c=%3

다음 방법을 사용하면 보안 위험이 있으며 매개 변수 수를 제한할 수 없습니다
RewriteRule ^search$ /index.php?m=search&c=index [L,QSA]

전문가에게 좋은 해결책이 있는지 물어보세요.

은 여전히 ​​k s c와 같은 매개변수를 다음과 같은 일반 일치 항목으로 사용합니다.

<code>RewriteCond %{QUERY_STRING} ^([a-z]+)=(.+)&([a-z]+)=(.+)&([a-z]+)=(.+)$
RewriteRule ^search$ /index.php?m=search&c=index...&%1=%2&%3=%4&%5=%6</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.