1

書き換えたい CMS (SilverStripe CMS) によって生成された URL がいくつかあります。何らかの理由で?url=、クエリ文字列に a を追加することで、URL を設定することが可能です。

したがってexample.com?url=/about-usexample.com/about-us同じページが表示されます。
あなたも行うことができexample.com/some-page/?url=/about-us、あなたはまだ私たちについてのページを取得します.

では、パラメータ「url」を含む URL をdomain.tld+ URL パラメータの値に書き換えるにはどうすればよいでしょうか。(example.com?url=/about-usなどexample.com/some-page/?url=/about-us) example.com/about-us

誰かが助けてくれることを願っています。

4

1 に答える 1

0

ドキュメント ルートの htaccess ファイルに次のルールを追加してみてください。

RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /[^\?]*\?url=([^&\ ]+)&?([^\ ]*)
RewriteRule ^ /%1?%2 [L,R=301]

これは、url=<something>クエリ文字列パラメーターを含むすべてのリクエストを受け取り、URI を完全に無視して、ブラウザーをリダイレクトし、/<something>その後にあるクエリ文字列を追加します。

于 2012-10-23T21:43:36.810 に答える