これは簡単なはずですが、問題を解決できませんでした。誰かにとっては秒単位の答えだと確信しています。
htaccess ファイルを次のように書き直しました。
RewriteCond %{THE_REQUEST} \ /product\.php\?categoryfilename=([A-Za-z0-9-%.]+)&category=([A-Za-z0-9-%.]+)&id=([A-Za-z0-9-]+)
RewriteRule ^ /%3-P.html? [R=301,L]
次のように入力すると、書き換えが機能します。
www.mysite.co.uk/product.php?categoryfilename=all-products.php&category=All%20products&id=MY-PRODUCT
次の場所にリダイレクトします。
http://www.mysite.co.uk/MY-PRODUCT-P.html
それから私は単純なリダイレクトであるべきものを持っています:
リダイレクト 301 /MY-PRODUCT-P.html http://www.mysite.co.uk/MY-PRODUCT-123-P.html ?
これは静的リダイレクトである必要がありますが、厄介な ? 結果の最後まで。
? を削除すると、? リダイレクトの最後から、最初の rewriterule の元の乱雑なパス名から残った php 変数が追加されます
どうもありがとう