0

URL の書き換えに関連して、次の問題があります。これには何か良い解決策があるに違いないと確信しています。

このURLを変換しました

domainname.com/index.php?page=product&pid=5&proTitle=Samsung Galaxy

書き換え後はこんな感じ

domainname.com/products/5/Samsung-Galaxy.html

コードは次の.htaccessようになります。

RewriteRule ^products/(.*)/(.*).html$ index.php?page=product&pid=$1&proTitle=$2 [nc]

書き換え正常に動作します。ただし、古い URL にアクセスしようとするとdomainname.com/index.php?page=product&pid=5&proTitle=Samsung Galaxy、ページは引き続きアクセス可能であり、さらに Google や他の検索エンジンによってクロールされます。誰かがこの URL にアクセスしようとすると、Page Not Found に誘導する必要があり、これもクローラーによってスニッフィングされないようにする必要があります。

これを行うための賢い方法があるに違いないと確信しています。貴重なご意見お待ちしております。

4

2 に答える 2

0

人々がブックマークしている可能性があるため、実際にページにアクセスできないようにする必要はないと思います。元の場所に戻るのが難しくなっているだけです。主な問題が Google がまだ参照していることにある場合は、rel="canonical" を使用して、Google に使用させたい URL を指定します。 https://support.google.com/webmasters/answer/139394?hl=ja

于 2013-09-17T18:51:19.390 に答える
0

htaccess に次のコードを挿入します。

このコードは、「domainname.com/index.php?page=product&pid=5&proTitle=Samsung Galaxy」という URL を 403 Forbidden に見せることができます。

ブラウザが 404 または 403 の URL を見つけた場合、これを直接挿入します。

ErrorDocument 404 /errormessages/404.php

ErrorDocument 403 /errormessages/403.php

パス /errormessage/404.php または 403.php を必要に応じて変更できます

この「スペースを使用しないでください」を挿入します。


< IfModule mod_rewrite.c >

RewriteEngine オン

RewriteCond %{THE_REQUEST} ^. (\?page=product&pid=$1&proTitle=$2)。【NC】

RewriteRule ^(.*)$ - [F,L]

< /IfModule >

于 2013-09-17T18:08:26.807 に答える