4

私の問題は、 http://www.piranha-internet.co.uk/web/website-design.phpなどの私の Web サイトの特定のページで、Google Webmaster Tools で 404 エラーが表示されることです。ただし、ページには通常どおりアクセスできます。すべてのページには、まだ外部からではなく、内部を指すリンクがあります。

  • このページでヘッダー チェックを行ったところ、404 も返されました。
  • サーバーに空のファイルを作成しましたが、問題なく 200 コードが表示されますが、問題の 404 ファイルを複製して名前を変更すると、同じ 404 エラーが発生します。
  • 私のサイトには約 40 ページあり、その半分は 200 コード、半分は 404 です。それらはすべて同じ構造と同じインクルードを使用していますが、コンテンツはすべて異なります。

なぜこうなった?

4

3 に答える 3

3

HTMLの前にコードの上部にワードプレスヘッダーを含めようとしたときに同じ問題が発生しました

<?php
    include('blog/wp-blog-header.php');
?>

ページは機能しましたが、Google は 404 を検出し、ページをインデックスに登録しませんでした。

PHP インクルードを HTML の本体内に移動することで問題を解決しました。

奇妙な問題...

ダン

于 2012-06-03T12:10:27.407 に答える
2

Fiddler を使用してhttp://www.piranha-internet.co.uk/web/website-design.phpにアクセスすると、ページ コンテンツと共に 404 HTTP ステータス コードが返されます。サーバーのどこか、またはコードが実際に 404 HTTP ステータス コードを送信しています。

ヘッダー インクルード ファイル.phpなど、関連するページのソース コードの一部を表示できる可能性はありますか?website-design.php

編集:

体系的なアプローチを試してみてください: 200 HTTP コードを返す空白のページから始めます。404 を返すページの 1 つから HTML / PHP の行を 1 行ずつ追加し、200 ではなく 404 になった変更が見つかるまで、変更ごとにテストを続けます。特定のコード行、特定の関数呼び出し、インクルードなどを実行し、結果を投稿します。

于 2011-05-04T16:22:16.393 に答える
0

GWT に表示されるのは、実際の HTTP 応答コードです。あなたの場合、404は「見つかりません」を意味します。

定義上、これはリクエストを「見つかりません」とマークし、それが GWT から報告されます。

どの PHP スクリプト内でも、出力に加えて応答コードを設定できます。のコードについての洞察がない/web/website-design.phpため、何が間違っているのか、またはまったく間違っているのかを判断するのは困難です。

コード内でheader() 関数の使用を探すことができます。その関数は、応答コードを設定できます。

于 2011-05-04T16:07:57.820 に答える