У меня есть приложение для Windows, которое я пытаюсь создать для имитации загрузки в веб-приложение. Проект находится в C# 3.0.
При использовании Fiddler я вижу следующее
/ страница входа — 200 код
введите pwd / uname
/ домашняя страница — код 302 / домашняя страница — код 200
/ Загрузить страницу [Эта страница содержит простую форму из нескольких частей, в которой пользователь может выбрать максимум 2 файла для загрузки] — 200 кодов
/ страница, обработанная файлом — код 302 / страница, обработанная файлом — код 200
Когда я использую HttpWebrequest с объектом webresponse, я получаю
/ страница входа — 200 код
введите pwd / uname
/ домашняя страница — 200 код
/ Загрузить страницу [Эта страница содержит простую форму из нескольких частей, в которой пользователь может выбрать максимум 2 файла для загрузки] — 200 кодов
/ обработанная страница — код 302
У меня есть SetAutoRedirect для истинного
Stream requestStream = request.GetRequestStream(); requestStream.Write(bytes, 0, bytes.Length); requestStream.Write(buffer, 0, buffer.Length); FileStream stream2 = new FileStream(filePath, FileMode.Open, FileAccess.Read); byte[] buffer = new byte[0x1000]; int count = 0; while ((count = stream2.Read(buffer, 0, buffer.Length)) != 0) < requestStream.Write(buffer, 0, count); >bytes = Encoding.ASCII.GetBytes(«rn—» + str2 + «—rn»); requestStream.Write(bytes, 0, bytes.Length); requestStream.Close(); stream.Close(); HttpWebResponse response = request.GetResponse() as HttpWebResponse; if(response.StatusCode == HttpStatusCode.Found)
Как избежать ошибки 302 или как я могу объяснить ее, в которой я могу создать успешную форму для имитации загрузки
Ошибка р0300, p0301, p0302, p0303 и p0304 пропуски зажигания неустойчивая работа
Источник: stackru.com
Код ответов сервера
Код ответа это инструкция, которую получает посетитель, заходя на страницу сайта. С помощью этой инструкции браузер может скорректировать обработку страницы на стороне посетителя. На первый взгляд, код ответа сервера фактор, не имеющий никакого отношения к продвижению сайтов. Однако это не так. Да, настройки ответа сервера не могут улучшить ранжирование сайта, но допущенная в них ошибка может поставить крест на ваших планах покорения топа результатов поиска.
Поисковые роботы, как и посетители, учитывают коды ответов сервера и на их основании корректируют обработку страниц. В частности, по кодам ответа поисковые системы принимают решение о том, что:
– страница существует и работает корректно;
– страница не существует;
– страница перемещена навсегда;
– страница временно перемещена;
– сервер загружен и не может обработать запрос.
Существуют и другие, менее значимые, инструкции.
Описание кода ответа 200.
Поисковые системы добавляют в свою индексную базу только те страницы, которые отдают код ответа 200, означающий «страница существует и доступна для просмотра». Все важные страницы, которые мы хотим «скормить» поисковому роботу, должны отдавать код ответа 200. Если страница использует редирект и лишь после перемещения отдает код ответа 200, поисковая система индексирует только конечную страницу.
Код ошибки P0302, диагностика и ремонт автомобиля
Страница-шлюз может быть удалена или понижена в ранжировании (это зависит от типа редиректа). Если страница отдавала код ответа 200 и попала в индексную базу, но позже была удалена и теперь отдает код 404, она со временем удаляется из индексной базы. Если на странице поставить 301 редирект, то через некоторое время она будет также удалена из индекса, а ее вес в некоторых случаях будет передан той странице, на которую ссылался редирект.
К сожалению, Яндекс очень долго осуществляет переиндексацию страниц с редиректом: были зафиксированы случаи, когда переклейка происходила почти год.
Коды ответов 301, 302, 303, 307.
Существует большое количество кодов для обозначения редиректа. Укажем здесь основные, наиболее важные для поисковых систем: 301 “постоянное перенаправление”. Означает, что страница перемещена навсегда. Этот редирект используется чаще всего.
В случае если адрес страницы изменился навсегда, что происходит, например, при редизайне или реструктуризации сайта, 301 редирект позволяет сохранить входящие внешние ссылки за счет переклейки их веса на новые адреса страниц. Яндекс обрабатывает этот редирект очень долго, может пройти до года, прежде чем страницы склеятся.
302, 303, 307 «временное перенаправление». Веб-мастер таким образом указывает роботу поисковых систем, что страница перемещена временно, а значит, ее не нужно удалять из индексной базы. В этом случае Яндекс может добавить в свою базу обе страницы, но отображать только одну из них в результатах поиска.
Из инструкций Яндекс. Вебмастер: При постоянном перенаправлении (301 код) между внутренними страницами хоста в результатах поиска будет отображаться цель. При временном перенаправлении (302, 303, 307) между внутренними страницами хоста в результатах поиска будет отображаться наиболее компактный URL.
Если вы изменили адрес страницы, выложили новую версию сайта или просто хотите убрать дубликат используйте 301 редирект. Важно использовать именно одношаговый редирект, не создавайте сложных конструкций из нескольких редиректов.
Код ответа 404.
Код ответа 404 используется для указания браузеру или поисковой системе, что страницы не существует. Сервер в этом случае отображает или стандартную страницу “по этому адресу ничего не найдено”, или страницу-заглушку, если создан специальный шаблон для несуществующих страниц.
Важно не путать серверный ответ 404 и 404-ю страницу-заглушку. Некоторые веб-мастера по каким-то им одним ведомым причинам на 404-й странице размещают заглушку с указанием “страница не существует”, но на уровне сервера отдают код ответа 200. Посетитель этого не замечает, но поисковая система воспринимает такие страницы как существующие, индексирует их и заносит в свою базу как дубликаты. Используя подобную уязвимость, на сайте вы можете создать сколь угодно большое количество дублирующихся страниц, понизив вес сайта для поисковой системы.
Если страницы не существует, сервер должен отдавать ответ 404. В этой статье мы разобрали основные серверные ответы и методы работы с ними. Используя эту информацию, вы можете избежать фатальных ошибок, приводящих к исключению страниц сайта из выдачи, созданию дополнительных дубликатов и потере веса при переклейке страниц.
Источник: s1-agency.ru
301, 302 или 404? Что применять и в каких случаях?
82
301 Moved Permanently
301 редирект указывает роботам ПС, что страница перемещена по новому адресу, а старый адрес следует считать устаревшим. Ссылочный вес старого адреса будет передан новому URL.
Стандартные случаи применения 301 редиректа:
- склеивание зеркал сайта;
- канонизация слеша в конце URL;
- редирект одной страницы на другую;
- редирект для дублей главной страницы (например, с index.php);
- переезд на новый домен;
- изменение адреса страницы;
- изменения «хвоста» (суффикса) страниц, например, с «html» на «htm»;
- перенос группы страниц из одной категории в другую.
В каких ещё случаях целесообразно настроить 301 редирект
– Из товарных карточек
В некоторых случаях, если товара нет в наличии и больше не планируется добавляться, можно настроить 301 редирект на аналогичную модель. Если аналогичной модели нет, настроить 301 редирект на категорию, к которой относился товар.
Настроив 301 редирект, вы сохраните на сайте внешние сигналы. Если кто-то из пользователей перейдёт на страницу по ссылке или закладке, он увидит аналогичную модель или попадёт на страницу раздела, где сможет найти похожий товар.
Прежде чем принять такое решение, нужно провести детальный анализ, описанный в нашей статье «Как не терять трафик из товарных карточек, если товара нет в наличии?»
Если у вас есть пиаристый домен с внешними ссылками, который по каким-то причинам не используется, можно использовать 301 редирект на продвигаемый сайт. Важное условие – схожесть тематики.
Наиболее используемые правила настройки файла .htaccess для 301 редиректа
Рекомендуем размещать все правила после следующих строк:
Options +FollowSymLinks RewriteEngine On
Переадресация домена без www на домен с www:
RewriteCond % ^site.ru$ [NC] RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
Переадресация домена с www на без www:
RewriteCond % ^www.site.ru$ [NC] RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
Перенаправление с одной статической страницы на другую:
Redirect 301 /was.php http://www.site.ru/new.php
Редирект на папки без слеша:
RewriteCond % !-d RewriteCond % ^(.+)/$ RewriteRule ^(.+)/$ http://www.site.ru/$1 [R=301,L]
Редирект на папки со слешем в конце:
RewriteCond % !-f RewriteCond % !..$ RewriteCond % !(.*)/$ RewriteRule ^(.*)$ http://www.site.ru/$1/ [L,R=301]
301 редирект с HTTPS-версии на HTTP:
RewriteCond % «on» RewriteRule .* http://%% [R=301,L,QSA]
301 редирект с домена на домен:
RewriteCond % ^xn-. .xn--p1ai$ [NC] RewriteRule ^(.*)$ http://www.site.ru/$1 [R=301,L]
Перенос изображений на поддомен:
RewriteRule ^img/(.+).jpg$ http://img.domain.ru/$1.jpg [R=301,L]
Редирект с поддомена на основной домен второго уровня:
RewriteCond % ^test.site.ru$ [NC] RewriteRule ^(.*)$ http://site.ru% [R=301,NC,L,QSA]
302 Found (HTTP 1.1) / Moved Temporarily (HTTP 1.0)
302 редирект – это временное перенаправление на другой адрес. Он означает, что ресурс временно находится где-то в другом месте, и клиент/браузер должен продолжать запрашивать исходный URL. Из индекса такие страницы не удаляются.
Случаи, в которых целесообразно использовать 302 редирект:
- если товара временно нет в наличии;
- если исходная страница в стадии разработки или доработки;
- когда важно, чтобы старая страница продолжала индексироваться. Например, если на исходной странице размещены ссылки, которые должны и дальше индексироваться;
- когда нужно, чтобы пользователи видели только новую страницу;
- если целевая страница должна время от времени меняться.
Например, 302 редирект можно использовать для страницы с акционными предложениями в интернет-магазине. Чтобы не переделывать постоянно основную страницу, наполненную контентом и продвигаемую в ПС, можно временно перенаправлять её на страницы со списками свежих акций, которые могут обновляться еженедельно.
404 ошибка: страница не найдена
404 ошибка – это код ответа сервера, который означает, что страница, которую вы запрашиваете, не найдена.
Чаще всего причиной этой ошибки становятся:
- неправильно введённый URL;
- битые ссылки;
- изменение адреса страницы;
- удаление страницы или прекращение существования сайта.
Ошибки 404 также могут появиться вследствие некорректной работы сервера, который способен выдавать ошибку даже при работающем ресурсе.
Причин появления 404 ошибки много и исключить их все вы не сможете. Важно знать, какой должна быть страница 404, чтобы в случае, если пользователь на неё попадёт, он возвращался к работе с веб-ресурсом вместо ухода с него.
Подробное описание, какой должна быть правильная 404 страница.
Что выбрать: 301 или 404?
Каждую ситуацию нужно анализировать индивидуально. Ниже мы собрали несколько популярных вопросов и дали ответы на них.
Вопрос №1
CMS создаёт много несуществующих страниц в пагинации. Например, страниц в разделе ?p=20, а в пагинации может доходить и до ?p=1000. Что лучше: настроить 301 редирект на существующие страницы или 404?
Ответ