ホームページ  >  記事  >  バックエンド開発  >  RewriteCond はどのようにして擬似静的ルールの複数のパラメーターを取得しますか?

RewriteCond はどのようにして擬似静的ルールの複数のパラメーターを取得しますか?

WBOY
WBOYオリジナル
2016-09-01 00:20:121461ブラウズ

次のフォーム ルールが現在利用可能です:
/index.php?m=search&c=index&s=1&t=1&k=Keywords
パスを疑似静的で
/search?s=1&t=1&k=Keywords に転送したいです。フォーム

次のメソッドを使用してパラメータ値を 1 つだけ取得できます
RewriteCond %{QUERY_STRING} ^k=(.+)$
RewriteRule ^search$ /index.php?m=search&c=index...&k=%1

以下のメソッドを使用して複数のパラメータを取得する場合、パラメータの順序は一度変更されると機能しません。 &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=Keywords に転送したいです。フォーム

次のメソッドを使用してパラメータ値を 1 つだけ取得できます

RewriteCond %{QUERY_STRING} ^k=(.+)$
RewriteRule ^search$ /index.php?m=search&c=index...&k=%1

以下のメソッドを使用して複数のパラメータを取得する場合、パラメータの順序は一度変更されると機能しません。 &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]


何か良い解決策がないか専門家に聞いてください。

次のような通常の一致として

などのパラメータを使用します。 リーリー

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。