Почему мой сайт выдает 404 ошибки для страниц, которые существуют и доступны? - PullRequest
4 голосов
/ 04 мая 2011

Моя проблема в том, что на некоторых страницах моего сайта, таких как http://www.piranha -internet.co.uk / web / website-design.php Мне сообщили об ошибке 404 в Инструментах Google для веб-мастеров,Однако я могу получить доступ к страницам в обычном режиме, все они имеют ссылки, указывающие на них изнутри, но не со стороны.

  • Я провел проверку заголовков на этой странице, и мне тоже обслужили 404.
  • Я создал пустые файлы на своем сервере, и они, кажется, отлично дают мне код 200, но если я дублирую и переименую эти 404 файла, я получаю те же ошибки 404.
  • У меня примерно 40 страниц намой сайт, половина из которых содержит 200 кодов, а половина - 404. Все они используют одну и ту же структуру и включают в себя одно и то же, но содержание у всех разное.

Почему это происходит?

Ответы [ 3 ]

3 голосов
/ 03 июня 2012

У меня была такая же проблема, когда я пытался включить свой заголовок WordPress в верхней части кода перед HTML

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

Страницы работали, но Google увидел 404 и не будет индексировать страницы.

Решил проблему, переместив PHP include внутри тела HTML.

Странная проблема ...

Dan

2 голосов
/ 04 мая 2011

Появляется, когда я посещаю http://www.piranha -internet.co.uk / web / website-design.php с помощью Fiddler, я получаю код состояния 404 HTTP, возвращаемый вместе с содержимым страницы.Где-то ваш сервер или ваш код на самом деле отправляет код состояния HTTP 404.

Есть ли вероятность, что вы могли бы показать часть своего .php исходного кода для соответствующих страниц, таких как website-design.php и заголовоквключаемые файлы?

Редактировать:

Не могли бы вы попробовать системный подход: начать с пустой страницы, которая возвращает HTTP-код 200.Добавьте строки HTML / PHP с одной из тех страниц, которые возвращают 404, построчно, и продолжайте тестировать после каждого изменения, пока не найдете какое изменение отправило его на 404 вместо 200. Посмотрите, можете ли вы отследить его доопределенную строку кода, вызов определенной функции, включите и т. д. и опубликуйте результат.

0 голосов
/ 04 мая 2011

То, что вы видите в GWT, - это фактический код ответа HTTP.404 в вашем случае это означает «Не найдено».

По определению это помечает запрос как «Не найдено», и это то, что GWT сообщает вам.

В любом скрипте PHP, который вы можете установитькод ответа в дополнение к выводу.Я не имею представления о коде /web/website-design.php, поэтому трудно сказать, что не так или вообще не так.

Вы можете посмотреть на использование функции header () вваш код.Эта функция может установить код ответа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...