301リダイレクトページのHTMLをドキュメントに挿入すると、実際の301リダイレクトと同じ機能が実行されますか?


15

Webデバッガーでは、301リダイレクトページのhtmlは次のように表示されます。

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://www.website.com/webpage.htm">here</a>.</p>
</body></html>

サーバーサポートなしでhtmlページをリダイレクトする必要があります。ページhtmlを上記のコードで置き換えた場合、Apacheの.htaccessに301リダイレクトを記述するのと同じように機能しますか?私はグーグルでこれを調べましたが、301リダイレクトについて話しているサイトはhtmlページをリダイレクトするためのこのオプションをカバーしていませんでした。

回答:


18

理想的には、301 HTTP応答ステータスコードを送信します。それができない場合、即時のメタリフレッシュも機能し、検索エンジンに応じて301または302リダイレクトとしてカウントされます。

<meta http-equiv="refresh" content="0;url=http://example.com/new.html">

リフレッシュレート、30xリダイレクトと見なされるためにゼロでなければなりません


おかげで、その記事はプロセスを非常にうまく表現しています。=貧乏人の301以上の私のhtml例の内部0遅延メタリフレッシュ
JMC

10

いいえ、単にHTMLを例に置き換えるだけでは、探している効果は得られません。Apacheは '200'ステータスコードを一緒に送信するため、ユーザーにそのページを表示するだけです。ユーザーはリンクをクリックしてページを見つけることができますが、自動的に行われることはなく、スパイダーはリソースの永続的なリダイレクトを実行するつもりであることを知りません。

.htaccessまたはApache confファイルのいずれかで適切なRedirectまたは_mod_rewrite_ディレクティブを使用する必要があります。

あるいは、実際にPHPなどを使用している場合、戻りコードを301に設定し、Location応答ヘッダーを出力すると、ページベースのソリューションが機能します。PHPでは、次のようになります。

<?php
header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: http://www.new-url.com" );

200ステータスコードに関する+1ポイント。それについて考えなかった。残念ながら、それはIISサーバーであり、ftpよりも深いアクセス権はありません。ページは.htmlなので、aspリダイレクトは処理されません。
-JMC

その場合、John Condeの答えが最適です-メタリフレッシュの等価性を忘れていました。
ヒソハトヘア

3

あなたのアプローチは実際にはリダイレクトされないという点で、Hissohathairに同意してください。ユーザーはリンクをクリックすることを知っているかもしれませんが、元のページは通常の '200'ステータスコードを返し、検索結果に表示され続けます(おそらくあなたが望んでいるものとは異なります)。

ページランクを維持するには、301ステータスコードが非常に重要です。メタリフレッシュタグを追加することも適切なオプションであり、ほとんどの場合(ジョンの応答による)に役立つ可能性がありますが、検索エンジンが将来的に301リダイレクトとして受け入れることを保証できない場合があります。.htaccess(またはApache confファイル)に適切なリダイレクトを追加することは、301ステータスコードが送信されることを保証するための最良のオプションです。

編集:

=======================

IIS7 Webサイトの場合、IIS URL書き換えモジュールがインストールされている限り、サイトのweb.configでリダイレクトルールを作成できます。これらのルールは.htmlファイルにも適用されます。詳細はこちら:

http://learn.iis.net/page.aspx/461/creating-rewrite-rules-for-the-url-rewrite-module/

=======================

Webホストに.htaccess / mod_rewrite機能がない場合の別の選択肢は、サーバー側リダイレクトをセットアップできる場所を使用しているWebホストを変更することです。サイトが適切に移動される限り、ユーザーにとってはかなりシームレスなはずです。この方法は、ページランクを維持することが非常に重要な場合にのみ、極端な場合に使用します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.