1

現在リダイレクトするために、次の mod_rewrite ルールを使用しています。しかし、私が本当に達成したかったのは、両方の URL が機能することでした。

要求された URL の例: http://sandbox.local/services/userdetails/get.json?username=beebee&ugc_token=abcdef

書き換えられた URL: http://sandbox.local/services/userdetails/username/beebee.json?ugc_token=abcdef

書き換えルール:

RewriteCond %{QUERY_STRING} (username|uid)=([^&]+)&(.*)
RewriteRule ^services/userdetails/get.json$ /services/userdetails/%1/%2.json?%3 [NE,L,R=301]

上記のルールは機能しますが、ユーザーをリダイレクトします。削除するR=301と、ルールが機能しなくなり、404 ページが表示されます。同じ要求された URL を保持し、301 リダイレクトを行わない方法はありますか?

4

1 に答える 1

0

Drupal を使用していたことを忘れていました。

また、私は Drupal を使用していたRewriteRuleため、実際にリクエストを送信しindex.phpて問題を解決するように変更する必要がありました。

RewriteCond %{QUERY_STRING} (username|uid)=([^&]+)&(.*)
RewriteRule ^services/userdetails/get.json$ index.php?q=services/userdetails/%1/%2.json&%3 [NE,L]
于 2013-07-10T10:37:10.260 に答える