1

(htaccessに関して)最後の改善点を1つ追加しようとしています。それは、にリダイレクト/?mod=inicioしたいということ/inicioです。だから私は次のコードでそれをやろうとしていますが、それはこのようにURLを構築し続けます/inicio?mod=inicio

RewriteCond %{QUERY_STRING} ^mod=([a-z]+)$ [NC]
RewriteRule .* /%1 [L]

追加のパラメータで同じこと:/?mod=x&type=y-zから/x/y-z

4

1 に答える 1

1

代わりに次のルールを試してください。

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /\?mod=([a-z]+)&type=([a-z\-]+)
RewriteRule ^ /%1/%2? [L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /\?mod=([a-z]+)($|\ )
RewriteRule ^ /%1? [L]

重要なのは、URIではなく実際のリクエストと照合することです。他のルール(前の質問から)によってこれらの書き換えが一致し、互いに競合するためです。もう1つの重要なポイントは?、ターゲットの最後にaを含めることです(たとえば/%1/%2?)。これにより、クエリ文字列が追加されないようになります

于 2012-09-18T21:16:37.387 に答える