私のウェブサイトには、WordPressによっていくつかのURLが自動的に追加されました。 Googleでインデックスに登録されました。ここで、これらのURLを「410 Gone」として表示する必要があります。
例えば:
/contact/
/about-us/
これらのページはウェブサイト上にもうありません。新しいWebサイトはPHPで作成されます。
それらを410エラーページにする方法、またはGoogleが検索インデックスからドロップする方法を教えてください。
PHPで直接必要なのは、410ヘッダーを出力することだけです。
header( "HTTP/1.1 410 Gone" );
安全のために、exit()
を後に呼び出すことをお勧めします。
少数のページがある場合、それぞれに対して1つのファイルを作成するか、すべての削除されたページを410ステータスを送信する1つのPHPファイルにマップするRewriteRule
を使用して.htaccessを変更できます。上に示しました。
技術的には、PHPはまったく必要ありません。htaccessは、次のように設定したステータスベースのルールを送信できるためです。
RewriteRule ^contact/ - [L,R=410]
RewriteRule ^about/ - [L,R=410]
このようなページが多数ある場合、通常、PHPで記述されたカスタムエラーページにロジックをエンコードします。ファイルが見つからないときに呼び出され、410ヘッダーを返すかどうかを判断するためにルックアップを実行できます(必要に応じて、これらのページにアクセスする頻度の統計を収集するなど、他のことを行います)。
Googleがページの404見つからないエラーを繰り返し検出すると、410がなくなったものとして処理し、インデックスからそれらを削除します。 Googleが初めて404を取得したとき、インデックスからページを削除することはありません。一時的なエラーの可能性があるためです。
厳密に言えば、行ったページを410としてマークする必要はありませんが、その場合は、サイトルートの.htaccessファイルに移動して次の行を追加するだけです...
Redirect 410 /foo/bar/demo.php