web-dev-qa-db-ja.com

SEO:最終スラッシュのあるページもリダイレクトする必要がありますか?

Google SEO REPORT CARD を読んで、検索エンジンの場合、このページ:

http://www.domain.com/somepath

これとは異なるページです:

http://www.domain.com/somepath/(最後のスラッシュ「/」に注意してください)

まあこれが本当なら、私はいくつかの質問があります:


A)これはホームページのパスにも当てはまります。つまり、http://www.domain.com

私はすでに301 http://domain.comhttp://www.domain.comにリダイレクトしていますが、どうすればhttp://www.domain.comhttp://www.domain.com/にリダイレクトすることもできます(最後のスラッシュ付き)?実際にApacheサーバーまたはブラウザクライアント(これを誰がやっているのか分からない)は、ブラウザバーにhttp://www.domain.comを挿入すると、常に最後のスラッシュを自動的に追加してhttp://www.domain.com/にするため、すでにこの種のリダイレクトを行っているようです

だから私は混乱しています、私は何かをする必要がありますか?


B)私はまだファイル拡張子を使用しているので、サイト内のすべてのページはdomain.com/somepathの形式であるため、domain.com/somepath/somepath/page.htmにリダイレクトすることをあまり気にしませんでした。

しかし、とにかく私を混乱させる奇妙なことに気づきました。 URL somepath/page.htmとして入力すると、サーバーはエラーではなくsomepath/page.htm/の同じページ(最後のスラッシュ付き)を返します。 http://www.php.net/docs.php を探すと http://www.php.net/docsの同じページが返されるため、これは正常だと思います.php / (最後のスラッシュ)、しかし、これらは検索エンジンの2つの異なるページとみなされますか?

次に、最後のスラッシュのある各URLを最後のスラッシュのない同じURLに301リダイレクトするために、.htacessを再度調整する必要がありますか?


ありがとう!

5
Marco Demaio

ドメイン名の末尾のスラッシュare末尾のスラッシュなしとまったく同じように扱われます。つまり、http://www.domain.com = http://www.domain.com/

しかし、それは唯一の例外です。 URLが異なる場合はいつでも、まったく異なるコンテンツを返すことができるため、異なるURLとして扱われます。

返されるファイル(.htm.phpなどの拡張子)の末尾にはスラッシュを付けないでください。 Apacheサーバーでは、通常、後続のスラッシュは無視され、ファイルが返されます。これがApacheの仕組みです。上記のような実際のファイルまたはフォルダ構造がない場合、URL example.com/file.php/abc/xyzfile.phpに戻ります。

通常、ディレクトリには末尾のスラッシュがあります-再び、Apacheは自動的に301にリダイレクトします。たとえば、フォルダーhelloがある場合、example.com/helloexample.com/hello/にリダイレクトする必要があります。

3
DisgruntledGoat

URLのどの部分に違いがある場合でも、大文字でもパラメーター順でも、検索エンジンはそれを一意のURLとして表示します。

A)はい、たとえドメインであっても、それらはまだ異なるURLです。 .htaccessファイルに次のコードが役立つ場合があります。

#change RewriteBase to / after transfer
RewriteBase    /

#Redirects non-www to www
RewriteCond %{HTTP_Host} ^domain.com
RewriteRule (.*) http://www.domain.com/$1 [R=301,L]

B)これらは異なるURLと見なされますが、ブラウザがまだ正しく解釈する場合でも、ファイル拡張子の直後にスラッシュを使用しないでください。ファイル拡張子の直後にスラッシュが表示されたことはないと思うので、自分でページにリンクしているのでなければ、あまり心配する必要はありません。拡張子の後にスラッシュを使用しないでください。

一般的に、URLスキームの一貫性を保ちます。 1つの方法を選択し、それに固執します。

5
Virtuosi Media

Google SEO Guide および常識によれば、Webサイトのパスはディレクトリ構造に似ています。

したがって、末尾のスラッシュはフォルダーのルートを示します。パワーユーザーは、次のことも試みます。

  • ユーザーはhttp://domain.com/articles/2009/Nice-shoes.htmから入力します
  • ユーザーは、http://domain.com/articles/2009/のようなディレクトリ一覧に入れる最後のピースを削除します。 2009。

これに従ってURLを調整すると、階層をより明確にクロールおよびインデックス付けできるようになります。

必要に応じて、両方の.htaccess mod_rewriteでこの修正を行い、末尾のスラッシュを追加または削除できます。チェック:

http://www.google.com/search?q=htaccess+removing+trailing+slash

http://www.google.com/search?q=htaccess+adding+trailing+slash

お役に立てれば。

0
Dave

Rel = canonicalタグを使用して、インデックスに適切なURLをGoogleに提案することもできます。

0
Evgeny

私の意見では、スラッシュを削除するリダイレクトが最良の選択肢です。人々があなたのサイトにリンクするとき、彼らは2つの方法のいずれかを行い、URLを手動で入力します。その場合、彼らは末尾のスラッシュを含めることはほとんどありませんこの場合、末尾のスラッシュが含まれるため、末尾のスラッシュをそのままにしておくと、リンクを2つのURLに分割する可能性があります(Googleは2つのページが同じであると認識するほど洗練されているようですが、それは簡単な修正です安全にしてからごめんなさい).

.htaccessファイルにアクセスできない、またはこれらの別の方法でリダイレクトできない場合は、正規のタグを使用できますが、コードを正しく取得するのが常に良いので、最後の手段になるはずです。 -エイズ。

0
Joshak

スラッシュのないURLは、スラッシュのあるURLとは異なるものとして扱われるため、SEOの用語では、何をするにしても一貫性があります。

スラッシュが必要ですか?もちろん、特にサブフォルダーを扱う場合は、そうする必要があります。

http://example.com/fooを要求するとき、サーバーは最初にリソース呼び出しfooを探す必要があります。見つからない場合は、通常fooというディレクトリを探し、見つかった場合はデフォルトのドキュメントを返します。

http://example.com/foo/を要求すると、サーバーはfooがディレクトリであることをすぐに認識します。したがって、そのフォルダのデフォルトドキュメントをゼロにします。

それほど効率的ではありませんが、少しでも役に立ちます。

見る:

0
CJM