このロジックが機能する必要があります:
ユーザーが見られるようにこの文字列を書き直したい
http://mysite.com/index.php?cl=mykeystring から http://mysite.com/otherkey/
http://mysite.com/index.php?myvar=test&cl=mykeystring&mysecondvar=morevalue から http://mysite.com/otherkey/myvar=test&mysecondvar=morevalue
ただし、http://mysite.com/otherkey/が記述されている 場合は、http://mysite.com/index.php?cl = mykeystringをロードしますが、リダイレクトは行われません。
出来ますか?コードを変更する可能性はありませんが、.htaccessのみを変更できます
このロジックは、次のコードによってほぼ実現されます。
RewriteCond %{QUERY_STRING} ^(.*?)cl=mykeystring(.*?)$ [NC]
RewriteRule ^index.php$ /otherkey/%1%2? [R,L]
RewriteRule ^otherkey/(.*?)$ /index.php?cl=mykeystring&$1
しかし、最初の書き換えルールで不要なアンプシンボルを取得しています。解決策はありますか?