/ / htaccessで301リダイレクトできない - apache、.htaccess、mod-rewrite、redirect

301 htaccessでリダイレクトできません - apache、.htaccess、mod-rewrite、redirect

RedirectMatch ^insights/(.*).html?view=(.*)&p=([0-9]+)&/(.*)$ insights/$1/$2/$3-$4.html [R=301,L]

私がなぜ働いていないのか教えてください。

エラーを表示しています

内部サーバーエラー

サーバーで内部エラーまたは構成ミスが発生し、要求を完了できませんでした。

サーバー管理者のwebmaster @ localhostに連絡して、エラーが発生した時刻、およびエラーの原因となった可能性のあることを通知してください。

このエラーの詳細については、サーバーのエラーログを参照してください。 Apache / 2.2.22(Ubuntu)サーバー(exlwebtest.cloudapp.net)ポート80

回答:

回答№1は0

QUERY_STRINGを使用して一致させることはできません RedirectMatch 指令。あなたの構文に加えて RedirectMatch あなたはその構文を次のように混ぜ合わせています。 mod_rewrite 構文。

つかいます mod_rewrite ルール。これをルートの.htaccessファイルに置きます:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^view=([^&]*)&p=([0-9]+)&/(.*)$
RewriteRule ^insights/(.+?).html$ insights/$1/%1/%2-%3.html? [R=301,L]

リダイレクトしようとしているURLの例を提供する方が良いでしょう。