Что я должен обслуживать, если на моем сервере веб-приложений есть ошибка? - PullRequest
0 голосов
/ 30 марта 2012

По сути, я не хочу, чтобы поисковая система наказывала меня за "дублированное содержимое". Я обеспокоен тем, что в некоторых случаях сервер веб-приложений может генерировать исключение на страницах, которые в противном случае отображались бы нормально.

Например, пользователи могут публиковать ссылки на следующие две страницы в Интернете:

www.example.org/nice-article

и

www.example.org/even-nicer-article

Теперь мое веб-приложение обычно возвращает две разные страницы, и они должны содержать отличный контент, который будет хорошо проиндексирован Google и т. Д.

Меня беспокоит то, что в некоторых случаях мой сервер веб-приложений может столкнуться с исключением при попытке обслуживания этих страниц: может быть ошибка, которую мы не обнаружили в предыдущем выпуске, сервлет может выдать исключение, так как ресурс это зависит от вниз и т. д.

В этом случае, насколько я понимаю, происходит некое исключение, но я не уверен, что я делаю правильно.

В моем web.xml у меня есть что-то вроде этого:

<error-page>
  <exception-type>java.lang.Throwable</exception-type>
  <location>/WEB-INF/jsp/error.jsp</location>
</error-page>

и

<error-page>
  <error-code>404</error-code>
  <location>/WEB-INF/jsp/error.jsp</location>
</error-page>

Я не уверен, что мой web.xml здесь правильный.

Меня беспокоит то, что в случае возникновения исключительной ситуации я отображаю сообщение error.jsp , сообщающее что-то вроде "Произошла внутренняя ошибка, повторите попытку позже" но по какой-то причине я бы отправлял это как обычную страницу, а не как страницу с ошибкой (и что, следовательно, все испорченные страницы будут называться «дублирующимся содержимым», потому что все они будут отображаться более или менее одинаково сообщение).

В основном я хотел бы знать две вещи:

  • какой код состояния я должен выдать, если ресурс , который обычно доступен , недоступен, когда сканирующие боты (и браузеры клиентов) пытаются получить к нему доступ (это 500, верно?)

  • как настроить Tomcat для генерации такого кода состояния

Кроме того, было бы здорово, если бы вы могли объяснить, как я могу проверить, работает ли это: например, могу ли я telnet войти и посмотреть, получу ли я правильный код ошибки?

Ответы [ 2 ]

1 голос
/ 30 марта 2012

http://support.google.com/webmasters/bin/answer.py?hl=en&answer=181708&topic=1724951&ctx=topic

Возврат кода, отличного от 404 или 410, для несуществующей страницы (или перенаправление пользователей на другую страницу, например домашнюю страницу, вместо возврата 404) может быть проблематичным. Во-первых, он сообщает поисковым системам, что по этому URL есть настоящая страница. В результате этот URL может быть просканирован, а его содержимое проиндексировано. Из-за того, что робот Googlebot тратит на несуществующие страницы, ваши уникальные URL-адреса могут обнаруживаться не так быстро или посещаться так часто, и это может повлиять на охват сканирования вашего сайта (кроме того, вы, вероятно, не хотите, чтобы ваш сайт имел хороший рейтинг для поиска query [Файл не найден]).

Я почти уверен, что содержимое любого кода ответа об ошибке не будет проиндексировано, и поэтому не должно наказывать вас за очевидное дублирование содержимого на страницах с общими ошибками

1 голос
/ 30 марта 2012

Возможно, вы захотите использовать ошибку 503 для временно недоступных страниц. Это скажет любому честному боту, что недоступность временная, и им нужно вернуться позже, чтобы просканировать страницу.

Мне кажется, ваша ошибка в файле web.xml нормальна - как вы проверили, что отправляете это сообщение как "обычную страницу"? (что я думаю - поправьте меня, если я ошибаюсь - означает, что вы получаете HTTP 200 вместо HTTP 404)

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