1

私はすべての質問を検索して閲覧しましたが、私の場合の解決策は見つかりませんでした。ここの誰かが私の問題に答えてくれることを願っています。

URLをマスクする方法を知っているので、私はこれを使用します:RewriteRule ^([^ /] +)。htm $ index.php?m = $ 1 [L]

これは、次のことを意味します: www.url.com/home.html => www.url.com/index.php?m=home

私の問題はSEOにあり、www.url.com / index.php?m = homeはgoogleにキャッシュされていますが、パラメーター付きのリンクではなく、seoに適したリンクをgoogleにキャッシュしたいと思います。

いや、私の質問は「www.url.com/index.php?m=homeのリンクを無効にして、クライアントがアドレスバーに入力すると、何も表示されないか、メインページにジャンプしますが、www.url.com/home.htmlはまだホームページを表示していますか?」

どんな助けでもありがたいです。ありがとうございました..

4

1 に答える 1

1

これにアプローチする最善の方法はhtaccess、現在のルールの前にクエリ文字列をキャプチャし、それを新しいURIに変更することです。

RewriteCond %{QUERY_STRING} ^m=([a-z0-9]+)$
RewriteRule ^(.*)$ %1.html? [R=301,L]

これにより、に渡されたものがすべて取得され、同等のものmにリダイレクトされます。.html

于 2013-03-04T05:18:18.713 に答える