Удаленный сервис возвратил ошибку

В данной статье вы узнаете что означает 502 bad gateway, а также какими способами можно ее исправить, если конечно проблема доступа кроется на стороне пользователя.

Ошибка Bad Gateway может быть настроена каждым сайтом. Хотя это довольно необычно, разные веб-серверы описывают эту ошибку по-разному. Вот некоторые общие способы, которыми вы можете это увидеть.

Что означает ошибка 502 Bad Gateway? Как исправить ошибку 502 bad gateway? Что делать если появляется ошибка 502 Bad Gateway?

Ошибка 502 Bad Gateway отображается внутри окна интернет-браузера, точно так же, как веб-страницы.

Что означает ошибка 502 Bad Gateway? Как исправить ошибку 502 bad gateway? Что делать если появляется ошибка 502 Bad Gateway?

Известная ошибка «fail whale» в Twitter, которая говорит о том, что Twitter превышает пропускную способность, на самом деле является ошибкой 502 Bad Gateway (хотя ошибка 503 также имеет смысл).

Ошибка Bad Gateway, полученная в Центре обновления Windows, генерирует код ошибки 0x80244021 или сообщение WU_E_PT_HTTP_STATUS_BAD_GATEWAY.

Когда сервисы Google, такие как Google Search или Gmail, испытывают 502 Bad Gateway, на экране часто отображается ошибка сервера, а иногда и всего 502.

Ошибки Bad Gateway 502 полностью независимы от вашей конкретной настройки, что означает, что вы можете видеть их в любом браузере, в любой операционной системе и на любом устройстве.

Что означает ошибка 502 Bad Gateway

Часто ошибки Bad Gateway вызваны проблемами между серверами в Интернете, которые вы не можете контролировать. Тем не менее, иногда нет реальной проблемы, но ваш браузер считает, что это одна из проблем с вашим браузером, проблема с вашим домашним сетевым оборудованием или какая-либо другая причина в вашем контроле.

Примечание. Веб-серверы Microsoft IIS часто предоставляют дополнительную информацию о причине ошибки 502 Bad Gateway, добавив дополнительную цифру после 502, как в HTTP-ошибке 502.3. Веб-сервер получил недопустимый ответ, или неправильно настроен прокси-сервер, что означает: ошибка соединения отправителя (ARR). Здесь вы можете увидеть полный .

Подсказка: ошибка HTTP 502.1 – ошибка «Bad Gateway» относится к проблеме тайм-аута приложения CGI, и лучше устранить ее как проблему с тайм-аутом шлюза 504.

Как исправить ошибку 502 Bad Gateway

Ошибка 502 Bad Gateway часто является сетевой ошибкой между серверами в Интернете, то есть проблема не связана с вашим компьютером или подключением к Интернету.

Что означает ошибка 502 Bad Gateway? Как исправить ошибку 502 bad gateway? Что делать если появляется ошибка 502 Bad Gateway?

Однако, поскольку вполне возможно, что с вашей стороны что-то не так, попробуйте исправить некоторые ошибки:

Попробуйте снова загрузить URL-адрес, нажав F5 на клавиатуре или нажав кнопку обновления/перезагрузки.

Хотя ошибка 502 Bad Gateway обычно указывает на сетевую ошибку вне вашего контроля, она может быть крайне временной. Повторное обновление страницы часто бывает успешным.

Запустите новый сеанс браузера, закрыв все открытые окна браузера, а затем открыв новый, и попробуйте снова открыть веб-страницу.

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

Очистите кеш браузера

Устаревшие или поврежденные файлы, хранящиеся в вашем браузере, могут вызывать проблемы с 502 Bad Gateway.

Если удалить эти кэшированные файлы и повторить попытку, проблема будет решена, если это является причиной.

Удалите файлы cookie вашего браузера

По тем же причинам, которые указаны выше в кэшированных файлах, очистка хранимых файлов cookie может исправить ошибку 502.

Примечание. Если вы не хотите очищать все свои файлы cookie, сначала попробуйте удалить только те куки, которые связаны с сайтом, на котором вы получаете ошибку 502. Но лучше полностью удалить все хранящиеся cookie в вашем браузере.

Что означает ошибка 502 Bad Gateway? Как исправить ошибку 502 bad gateway? Что делать если появляется ошибка 502 Bad Gateway?

Запустите браузер в режиме инкогнито

Запуск браузера в режиме инкогнито означает запуск с настройками по умолчанию и без надстроек и расширений, включая панели инструментов. Запустить браузер в данном режиме, на примере Google Chrome можно сочетанием клавиш Ctrl+Shift+N

Если ошибка 502 больше не появляется при запуске браузера в режиме инкогнито, вы знаете, что причиной этого является расширение или настройка браузера. Верните настройки браузера по умолчанию или выборочно отключите расширения браузера, чтобы найти основную причину и устранить неполадку.

Попробуйте использовать другой браузер

Используйте другой браузер, помимо самых популярных, таких как, Firefox, Chrome, Internet Explorer и Safari.

Что означает ошибка 502 Bad Gateway? Как исправить ошибку 502 bad gateway? Что делать если появляется ошибка 502 Bad Gateway?

Если альтернативный браузер не создает ошибку 502 Bad Gateway, теперь вы знаете, что ваш исходный браузер является источником проблемы. Предполагая, что вы следовали вышеизложенному совету по устранению неполадок, пришло время переустановить браузер и посмотреть, не устранит ли это проблему.

Перезагрузите компьютер и сетевое оборудование

Некоторые временные проблемы на вашем компьютере и то, как он подключается к вашей сети, может вызвать 502 ошибки, особенно если вы видите ошибку на нескольких сайтах. В этих случаях перезагрузка помогла бы.

Проблемы с вашим модемом, маршрутизатором, коммутаторами или другими сетевыми устройствами могут вызывать 502 Bad Gateway или другие 502 ошибки. Простой перезапуск этих устройств может помочь.

Совет. Порядок отключения этих устройств не особенно важен, но обязательно отключите их с внешней стороны.

Измените свои DNS-серверы либо на маршрутизаторе, либо на вашем компьютере или устройстве. Некоторые ошибки Bad Gateway вызваны временными проблемами с DNS-серверами.

Примечание. Если вы ранее не изменили их, DNS-серверы, которые вы настроили прямо сейчас, вероятно, будут автоматически назначены вашим провайдером.
Обращение непосредственно к веб-сайту может также быть хорошей идеей. Скорее всего, администраторы сайта уже работают над устранением причины ошибки 502 Bad Gateway, но не стесняйтесь сообщить об этом.

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

Совет. Если вы подозреваете, что веб-сайт недоступен для всех, особенно если он популярный, проверьте это в Twitter. Лучший способ сделать это, искать в поиске хештеги, на примере популярной социальной сети #вкошибка #вкнеработает и т.д.

Обратитесь к своему Интернет-провайдеру

Если ваш браузер, компьютер и сеть работают, и веб-сайт сообщает, что страница или сайт работает, проблема 502 Bad Gateway может быть вызвана сетевой проблемой, за которую отвечает ваш интернет-провайдер.

На данном этапе устранения неполадок сообщение об ошибке 502 Bad Gateway почти наверняка является проблемой как для вашего интернет-провайдера, так и для сети веб-сайта.

В любом случае, вы не единственный, кто видит ошибку 502, поэтому вам придется подождать, пока проблема не будет решена.

leephone.ru

Активные пользователи интернета нередко встречаются с разного рода ошибками, связанными с работой сервера, DNS, хостинга и так далее. Сегодня мы поговорим о 502 Bad Gateway, что это значит и как с ней бороться. Обычно оповещение об этой проблеме возникает при повторном обращении к одному и тому же ресурсу и ограничивает просмотр сайта.

502 Bad Gateway, что это значитошибка 502 bad gateway что значит

Дословный перевод ошибки с английского языка означает «Плохой шлюз». Таким образом, получается, что данная проблема связана с работой сервера и никак не зависит от действий пользователя.

Как правило, такую ошибку отдают ресурсы в ответ на обращение в случае, если имеются проблемы с работой прокси, DNS или хостинг-сервера. Собственно, все ошибки серии 5ХХ означают, что трудности возникли на стороне сервера. Причём чаще всего надпись на белом экране появляется именно при повторном обращении к определённому ресурсу.

Процесс, вследствие которого пользователь получает подобное оповещение следующий. Браузер отправляет на сервер запрос, как правило, по ссылке, ранее открывавшейся в обозревателе. В ответ ему приходит ошибка сервера, и как результат сообщение пользователю 502 Bad Gateway.

Причины возникновения

502 Bad Gateway

Ошибка 502 Bad Gateway, что это значит стало понятно. Разберёмся какие могут быть причины для её возникновения. Несмотря на то что такая информация больше будет полезна владельцам серверов и сайтов мы углубимся в подробности.

Первой причиной появления такой ошибки становится низкая мощность сервера, к которому обращается запрос. Например, если он рассчитан на обработку 5 тысяч запросов в секунду, а ему отправляют от 7 до 10 тысяч обращений, сервер очень скоро отправить пользователям ошибку 502. Для решения проблемы в данном случае необходимо наращивать мощности сервера, это добавление памяти, которой недостаточно в текущем объёме и расширение канала. Особенно свойственно появление такой проблемы для серверов, организованных на базе домашних ПК, подобную нагрузку обычный компьютер не в состоянии выдержать, поэтому при малейшем её увеличении сервер падает.

Ещё один вариант развития событий, следствием которой становится ошибка 502 Bad Gateway — DDoS-атака на конкретный сервер сайта. Это та же разновидность перегруженности, но спровоцированная искусственным путём. Как правило, такие атаки специально заказываются конкурентами. На сервер с помощью ботов отправляется огромное количество запросов, которые он не способен обработать. Вследствие чего сервер падает, а посетитель ресурса задается вопросом, 502 Bad Gateway что это значит.

Как бороться

Как уже упоминалось выше, ошибка вызвана проблемами со стороны сервера. От пользователя мало что зависит, в связи с этим чаще всего единственным вариантом решения проблемы становится ожидание. Техническая поддержка ресурса решить проблему и доступ на сайт возобновится.

Что может предпринять пользователь502 bad gateway nginx что это значит как исправить

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

  1. Чтобы убедиться, что именно сервер запрошенного ресурса не отвечает, попробуйте обратиться к другому ресурсу. Просто откройте в браузере ссылку на другой сайт, который гарантированно работает. Если доступ на страницу свободно предоставляется, значит, ждите починки нужного ресурса. Этот метод особенно актуален для пользователей корпоративных сетей, в которых доступ к интернету осуществляется через локальную сеть. И часто система не имеет возможности диагностировать ошибку за пределами выделенных ей прав.
  2. В случае если первый тест показал, что с доступом в сеть у пользователя все в порядке можно предпринять ещё одну меру. Опытные пользователи советуют почистить cookies. При желании пользователь может сделать это для конкретного сайта или удалить все данные.

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

  • Если вы пользуетесь браузером «Интернет Эксплорер», то нажмите значок шестерёнки в верхнем правом углу страницы и в разделе безопасность выберите пункт «Удалить журнал браузера». Откроется диалоговое окно, в котором пользователю предложат выбрать что именно он хочет удалить. Отметьте нужные пункты и нажмите «Удалить».
  • Для тех, кто предпочитает Яндекс-браузер инструкция, следующая. Нажмите на сэндвич из трёх горизонтальных линий, расположенный сразу после перечня открытых вкладок. Выберите дважды пункт «История». Тут можно отметить и удалить данные выборочно. Для полной очистки выберите в основном меню раздел «Дополнительно» и нажмите «Очистить историю».
  • Пользователи Google Chrome должны выбрать в главном меню раздел «История». Затем на открывшейся странице развернуть боковую панель и выбрать команду «Очистить историю».

Для всех остальных браузеров план действий будет примерно аналогичным. В настройках нужно найти раздел истории и очистить её вместе с куки-файлами, полученными от посещённых ресурсов.

Рекомендации для владельцев ресурса

Если ваш сайт часто выдаёт в ответ на запрос ошибку 502 Bad Gateway, то вот некоторые рекомендации, которые помогут справиться с проблемой.

502 bad gateway nginx/1.10.1 что это значит

  • Проанализируйте нагрузку, которая выдерживается сервером в штатном режиме и показатели при падении. Если нагрузка на оперативную память наблюдается, то необходимо ее добавить. Так как это один из важных узлов, обеспечивающих своевременную обработку информации.
  • Если ошибка выскакивает слишком часто, то проверьте корректность установки лимитов на количество php-cgi процессов. Именно ошибочная конфигурация в этом моменте способствует выводу сервера из строя.
  • Попробуйте сократить количество запросов к внешним ресурсам. Также может помочь установка ограничения на временной интервал ожидания ответа и загрузки.
  • Если для сайта используется виртуальный сервер, то при частых повторениях ситуации лучше сменить провайдера.

Вот мы немного разобрались в вопросе, 502 Bad Gateway что это значит, а также выяснили как поступать каждому участнику процесса, чтобы исправить ситуацию. Конечно, чаще всего пользователю остаётся только ждать. А вот владельцу ресурса нужно либо усиливать мощность сервера, либо менять поставщика хостинг-услуг.

Как часто вам приходится сталкиваться с такой ошибкой? Какие действия помогают исправить ситуацию? Интересует мнение как пользователей сети, так и владельцев сайтов. Поделитесь с нами своими наблюдениями.

strana-it.ru

Что вызывает 502 ошибку сервера

Ошибка 502 говорит о том, что обратный прокси-сервер (допустим, Apache) для сервера источника (например, nginx) получает некорректный ответ от исходного веб-сервера.

Посмотрев внимательнее, мы обнаружили, что Apache работает в нем как прокси nginx. Веб-сервер перезагружал http-сервис почти каждый час. Наш опыт в устранении подобных ошибок показывает, что ошибка 502 Bad Gateway появляется по одной из следующих причин:

  1. Перегруженность сервера. Веб-сервер может падать из-за нехватки ресурсов (например, оперативной памяти), вызываемой избытком выполняемых процессов или агрессивными действиями пользователей;
  2. Частая перезагрузка веб-сервера. Такое случается при ошибках конфигурации, сбоях в модулях, любых атаках, избытке выполняемых процессов и приложений. В результате пользователь видит временную 502 ошибку;
  3. Плохой код сайта. Сайты с устаревшими приложениями или корявым кодом влияют на правильное функционирование сервера и ведут к периодическому возникновению 502 ошибки;
  4. Ошибки сети. Прочие ошибки конфигурации сети (проблемы с DNS, маршрутизация, блокировка файерволом, используемым на сервере, проблемы у провайдера) также становятся причиной появления 502 ошибки сервера;
  5. Время ожидания серверного программного обеспечения. 502 ошибка неизбежна при снижении скорости выполнения запросов в nginx, когда средство кэширования (например, Varnish Cache) уходит в таймаут. Сюда же относятся и медленные запросы.

Как исправить 502 серверную ошибку в nginx

Сначала необходимо определить первопричину возникновения данной ошибки. Мы изучили серверные логи во время перезагрузок, и нашли там ошибки seg fault.

Затем мы покопались в конфигурации сервера, и увидели, что там отсутствовал модуль mod_rpaf. Именно это и вызывало падение сервера:

Rpaf – это модуль Reverse proxy add forward, разработанный для серверов Apache. Он нужен в том случае, если вы задаете Nginx фронденд-сервером и хотите получить реальный IP серверных запросов.

Данный модуль не работал под Apache-2.4, поэтому мы немного его подправили. После перекомпиляции и перезагрузки Apache ошибки сегментации прекратились.

Мы последили за сервером еще пару часов и убедились в том, что перезагрузки прекратились, а серверные ошибки исчезли.

Вот несколько советов, как исправить ошибку 502 bad gateway:

  • Следите за тем, чтобы файлы сайта (плагины и темы) своевременно обновлялись и не устаревали;
  • Оптимизируйте и исправляйте медленные MySQL-запросы;
  • Проводите аудит серверного программного обеспечения и вовремя обновляйте модули;
  • Избегайте проблем с маршрутизацией и отслеживайте любые перегрузки/атаки на сервер.

Перевод статьи «HOW TO FIX «502 SERVER ERROR – BAD GATEWAY» IN WEB SERVERS» был подготовлен дружной командой проекта Сайтостроение от А до Я.

У меня есть следующий фрагмент в классическом ASP, чтобы отправить команду и получить ответ по SSL:

Затем я использовал этот код в качестве ссылки для повторной реализации запроса в С#:

Проблема в том, что при вызове GetRequestStream я получаю WebException с сообщением "The remote server returned an error: (502) Bad Gateway."

Сначала я подумал, что это связано с проверкой сертификата SSL. Поэтому я добавил эту строку:

И я продолжаю получать ту же самую ошибку 502. Любые идеи?

Ошибка 502 Bad Gateway или как я уже выше говорил — недопустимый шлюз ознаменована тем, что ваш запрос посланный на сервер пришел туда, но по разного рода причинам не смог быть обработан там. Запрос попавший на сервер, где расположен сайт по которому Вы юзаете и выдающий ошибку 502, может быть расположен за шлюзом и может быть ошибка кроется в том, что у сервера не хватает мощности обработать все поступившие к нему запросы, которые выстроились в очередь. Вот он и глючит, выдавая ошибку 502, которая в свою очередь отправляется вам в браузер вместо вашего запроса.

И так, давайте теперь в порядке очереди рассмотрим все причины, которые могут привести к возникновению появления такого неприятного момента, как ошибка 502.

Самой важной причиной появления ошибки 502 Bad Gateway и на мой взгляд основной, является недостаточная мощность ресурсов на сервере, где располагается сайт, который выдает ошибку 502. Из-за нехватки ресурсов, сервер начинает тормозить, много думать и в конце концов выдает 502 ошибку.

Ресурсы сервера — это оперативная память, которая бывает, что не очень рационально используется на хостинге или ее очень мало для тех операций, которые происходят и сервер их просто не в силах обработать. Чтобы выявить эту проблему, необходимо узнать нагрузку на потребляемые ресурсы у диспетчера сервера и затем уже определить все затрачиваемые ресурсы. При выяснении этих проблем, Вы сможете узнать вышли ли Вы за рамки выделенного вам тарифного плана на своем хостинге или нет. Если вышли, то и ошибка 502 именно из-за этого и возникает.

Значит вам нужно изменить свой тарифный план на хостинге, посоветовавшись с вашим хостером через поддержку, а если выяснится, что это максимум, что хостер может вам предложить, то бегите от него быстрее на другой, более мощный хостинг, например МакХост. Этот хостинг уже испытан временем и множеством веб-мастеров, которые очень им довольны, включая и меня. Не очень скромно, но это именно так!

Это еще не все причины по которым может возникать ошибка 502 Bad Gateway — недопустимый шлюз. Сейчас мы с вами еще рассмотрим возможные причины ее появления.

Кроме основной причины, описанной мной выше, есть еще типичные причины возникновения данной ошибки …

Давайте выясним типичные причины нехватки ресурсов на сервере, которые приводят к тому, что появляется ошибка 502:

Finam 16:52:56.3650000 Старт с 26.01.2011 для RIU1@RTS.
Finam 16:52:59.1140000 Старт с 27.01.2011 для RIZ1@RTS.
Finam 16:52:59.6120000 Старт с 27.01.2011 для RIH1@RTS.
Finam 16:54:23.0580000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 16:54:59.1340000 Старт с 28.01.2011 для RIZ1@RTS.
Finam 16:54:59.4930000 Старт с 27.01.2011 для RIH1@RTS.
Finam 16:56:22.2140000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 16:56:59.1540000 Старт с 29.01.2011 для RIZ1@RTS.
Finam 16:56:59.4670000 Старт с 27.01.2011 для RIH1@RTS.
Finam 16:58:23.0100000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 16:58:59.1740000 Старт с 30.01.2011 для RIZ1@RTS.
Finam 16:58:59.5210000 Старт с 27.01.2011 для RIH1@RTS.
Finam 17:00:22.8470000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 17:00:59.1940000 Старт с 31.01.2011 для RIZ1@RTS.
Finam 17:00:59.5340000 Старт с 27.01.2011 для RIH1@RTS.
Finam 17:02:21.8990000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 17:02:59.2140000 Старт с 01.02.2011 для RIZ1@RTS.
Finam 17:02:59.5850000 Старт с 27.01.2011 для RIH1@RTS.
Finam 17:04:21.9340000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 17:04:59.2360000 Старт с 02.02.2011 для RIZ1@RTS.
Finam 17:04:59.5370000 Старт с 27.01.2011 для RIH1@RTS.
Finam 17:06:21.9130000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 17:06:59.2560000 Старт с 03.02.2011 для RIZ1@RTS.
Finam 17:06:59.5920000 Старт с 27.01.2011 для RIH1@RTS.
Finam 17:08:21.7270000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 17:08:59.2760000 Старт с 04.02.2011 для RIZ1@RTS.
Finam 17:08:59.6490000 Старт с 27.01.2011 для RIH1@RTS.
Finam 17:10:22.0840000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 17:10:59.2970000 Старт с 05.02.2011 для RIZ1@RTS.
Finam 17:10:59.6370000 Старт с 27.01.2011 для RIH1@RTS.
Finam 17:12:21.9650000 System.Net.WebException: Удаленный сервер возвратил ошибку: (502) Недопустимый шлюз.
в System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
в System.Net.WebClient.DownloadString(Uri address)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=q9gg83Pc4sDbdPCRGT9m40g==(Uri #=qDju1EUaixtc5cGHpz3sH_Q==, String #=qzA0aaNvM9wS_Wy4vos1Y2g==)
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qK9qV8MYxkX5_XNFh2FBZjEt4AmQKAh3Ng0PE74uoyLQ=.#=qbTEHPlq_OttWVeXod8zzjLNMV_ZVCNsDe2XvirVzP4E=()
в StockSharp.Algo.History.Finam.FinamHistorySource.#=qHjBwVIzugJpRLXKchln5Nw==[T](String #=qZBO6iTXsXW0fLFEOfkYRDQ==, Func`1 #=qLVCqCWlkOQwpBKQB0NxVFw==, Func`2 #=qWskpi2x$V_l0Y_9nuTPGzg==)
в StockSharp.Algo.History.Finam.FinamHistorySource.GetTrades(Security security, DateTime time)
в StockSharp.Hydra.Finam.FinamSource.Load() в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraPluginsFinamFinamSource.cs:строка 151
в StockSharp.Hydra.Worker.<>c__DisplayClass13.<Download>b__10(IMarketDataSource source) в f:SourcesStockSharpReleasesStockSharp_4.0.15HydraHydraWorker.cs:строка 187
Finam 17:12:22.1920000 Останавливается.
Finam 17:12:22.2020000 Остановлен.

В то время, когда вы просматриваете какие-либо сайты или страницы в Интернете, при обращении к различным узлам на экране вашего монитора может появиться сообщение «ошибка 502». При этом вы не можете открыть страницы сайтов, и у вас нет возможности просмотреть и изучить ресурсы этого веб-узла. Как правило, такая ошибка возникает по причине того, что выявляются проблемы в работе серверов, в основном это DNS, прокси или хостинг-сервер, на котором в данный момент находится недоступный сайт.

Выражение «ошибка 502 bad gateway» можно перевести как «неверный шлюз». Это будет означать, что браузер (обозреватель Интернета) на вашем компьютере при запросе какой-либо информации с веб-узла получил неприемлемый ответ от другого сервера (DNS или прокси-сервера). Об этом и сообщается пользователю при выводе на экране сообщения «502 ошибка».

Большинство интернет-пользователей неоднократно сталкивались с такой ошибкой, однако для некоторых это может быть впервые. Что же делать, когда сообщение «ошибка 502» появилось на экране вашего компьютера? В первую очередь необходимо проверить, есть ли вообще доступ к Интернету. Для этого следует набрать в браузере адрес другого сайта, который гарантированно должен работать в данный момент, поскольку, например, корпоративный доступ к Интернету осуществляется посредством прокси-сервера, а не сразу же через модем, подключенный на вашем компьютере или встроенный в него. Если в последнем случае ошибка более детально распознается, то при доступе в Интернет посредством локальной сети система не имеет возможности проверить ошибку. В связи с этим пользователю не остается ничего другого, как выяснять причины ее появления косвенными методами.

Если же доступ к Интернету имеется, однако при повторной попытке запроса страницы с необходимого сайта все равно выскакивает сообщение «ошибка 502», то в этом случае вам следует попытаться удалить cookies для данного сайта или все имеющиеся в вашем браузере.

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

Если после проведенных действий по очистке cookies все равно на экране появляется сообщение «ошибка 502», то это свидетельствует о том, что с вашим компьютером и сетью все в порядке, и, скорее всего, просто возникли неполадки с сервером. В этом случае вам следует немного подождать, пока администраторы не решат эти проблемы, и затем попробовать еще раз.

  • Remove From My Forums
  • Вопрос

  • Пишу приложение на Silverlight 4+WCF. На одной из страниц обращаюся к веб-камере и делаю снимок, который потом через веб-сервис отправляю в базу данных MSSQL. Когда передаю масив байтов в котором содержится снимок (размерность масива всегда передается одинаковая
    — [1228800]) получаю ошибку из веб-сервиса — Удаленный сервер возвратил ошибку Not Found. Что делать?

    Я пробовал отсылать пустой масив такой же размерности — все равно та же ошибка. Мой веб-конфиг:

    <?xml version="1.0"?>
    <!--
      Дополнительные сведения по настройке приложения ASP.NET см. по ссылке
      http://go.microsoft.com/fwlink/?LinkId=169433
      -->
    <configuration>
    	<connectionStrings>
      <add name="UserBaseConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True"
       providerName="System.Data.SqlClient" />
     </connectionStrings>
    	<system.serviceModel>
    		<bindings>
    			<basicHttpBinding>
    				<binding name="ServicesBinding" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" openTimeout="0:1:0" receiveTimeout="0:1:0" sendTimeout="0:1:0" closeTimeout="0:1:0">
    					<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"/>
    				</binding>
    			</basicHttpBinding>
    		</bindings>
    		<services>
    			<service behaviorConfiguration="Shmel.Web.MyServiseBehavior" name="Shmel.Web.MyServise">
    				<endpoint address="" binding="basicHttpBinding" bindingConfiguration="ServicesBinding" contract="Shmel.Web.IMyServise">
    					<identity>
    						<dns value="localhost"/>
    					</identity>
    				</endpoint>
    			</service>
    		</services>
    		<behaviors>
    			<serviceBehaviors>
    				<behavior name="Shmel.Web.MyServiseBehavior">
    					<serviceMetadata httpGetEnabled="true"/>
    					<serviceDebug includeExceptionDetailInFaults="false"/>
    				</behavior>
    				<behavior name="">
    					<serviceMetadata httpGetEnabled="true"/>
    					<serviceDebug includeExceptionDetailInFaults="false"/>
    				</behavior>
    			</serviceBehaviors>
    		</behaviors>
    		<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"/>
    	</system.serviceModel>
    	<system.web>
    		<compilation debug="true"/></system.web></configuration>
    

    Помогите.

Ответы

  • я забрал, но та же ошибка. к тому же другие методы работают прекрасно, так что проблема не в idenity.

    Я думаю что проблема в самом масиве, может он слишком большой чтобы его передавать? Но в конфиге все на максимум настроил.

    Если передавать масив меньше, то все работает.

    ах да, вот еще ClientConfig

    <configuration>
        <system.serviceModel>
            <bindings>
                <basicHttpBinding>
                    <binding name="BasicHttpBinding_IService1" maxBufferSize="2147483647"
                        maxReceivedMessageSize="2147483647" >
                        <security mode="None" />
                    </binding>
                </basicHttpBinding>
            </bindings>
            <client>
                <endpoint address="http://localhost:49160/Service1.svc" binding="basicHttpBinding"
                    bindingConfiguration="BasicHttpBinding_IService1" contract="ServiceReference1.IService1"
                    name="BasicHttpBinding_IService1" />
            </client>
        </system.serviceModel>
    </configuration>
    
    • Изменено

      24 июня 2012 г. 9:02

    • Помечено в качестве ответа
      Abolmasov DmitryModerator
      29 июня 2012 г. 7:23

  • «Я думаю что проблема в самом масиве, может он слишком большой чтобы его передавать?» — да, именно так. По умолчанию конфигурация такова, чтобы принимать маленькие порции данных, защитив таким образом от DoS атак.
    «Но в конфиге все на максимум настроил.» — видимо настройки не те. Нужно разбираться дальше в настройках, сам пока я с этим не сталкивался. А как одно из решений: можете отправлять данные порциями, а потом объединять их на сервере.

    • Помечено в качестве ответа
      Abolmasov DmitryModerator
      29 июня 2012 г. 7:23

  • Сначала, нужно точно определить, что за ошибка. Not Found — значит, что произошла ошибка сервера и за ней может скрываться все, что угодно.

    Для того, чтобы точно определить ошибку, попробуйте использоваться Fiddler2.

    Также можете добавить сл. строки в web.config — этим Вы включите трасировку WCF и сможете узнать, какая на самом деле ошибка произошла по логам сервиса (в папке c:\temp\).

     <system.diagnostics>
        <sources>
          <source name="System.ServiceModel" switchValue="Verbose,ActivityTracing" propagateActivity="true">
            <listeners>
              <add type="System.Diagnostics.XmlWriterTraceListener" name="ServiceModel" initializeData="c:\temp\server.svclog">
                <filter type="" />
              </add>
            </listeners>
          </source>
        </sources>
        <trace autoflush="true" />
      </system.diagnostics>

    • Помечено в качестве ответа
      Abolmasov DmitryModerator
      29 июня 2012 г. 7:23

I’ve written an app that has worked fine for months, in the last few days I’ve been getting the error below on the installed version only.

If I run the source code in VS everything works fine. Also, the .exe in the bin folders work fine. It’s only the installed version which generates the error, if I recompile and reinstall I get the same error.

I’m a bit stumped as to what’s causing this and hoped for a few pointers. It seems to be a WebRequest response through IE is not being returned but I’m stumped as to why it works fine in VS without any errors. Are there any new IE security measures/polices that may cause this?

Things I’ve tried so far include:

  • Disabled all AntiVirus & Firewall
  • Run as Administrator

The Exception:

Exception: System.Windows.Markup.XamlParseException: The invocation of the constructor on type 'XApp.MainWindow' that matches the specified binding constraints threw an exception. ---> System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()
   at XApp.HtmlRequest.getHtml(Uri uri) in J:\Path\MainWindow.xaml.cs:line 3759
   at XApp.MainWindow.GetLinks() in J:\Path\MainWindow.xaml.cs:line 2454
   at XApp.MainWindow..ctor() in J:\Path\MainWindow.xaml.cs:line 124
   --- End of inner exception stack trace ---
   at System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
   at System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
   at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
   at System.Windows.Application.LoadBamlStreamWithSyncInfo(Stream stream, ParserContext pc)
   at System.Windows.Application.LoadComponent(Uri resourceLocator, Boolean bSkipJournaledProperties)
   at System.Windows.Application.DoStartup()
   at System.Windows.Application.<.ctor>b__1(Object unused)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
Exception: System.Net.WebException: The remote server returned an error: (403) Forbidden.
   at System.Net.HttpWebRequest.GetResponse()
   at XApp.HtmlRequest.getHtml(Uri uri) in J:\Path\MainWindow.xaml.cs:line 3759
   at XApp.MainWindow.GetLinks() in J:\Path\MainWindow.xaml.cs:line 2454
   at XApp.MainWindow..ctor() in J:\Path\MainWindow.xaml.cs:line 124

EDIT:

This is installed as a standalone app. When I’ve run as Administrator, I’ve opened the program folder and run the exe as administrator rather than the shortcut.

The code that causes the issue is this

private void GetLinks()
{
    //Navigate to front page to Set cookies
    HtmlRequest htmlReq = new HtmlRequest();

    OLinks = new Dictionary<string, List<string>>();

    string Url = "http://www.somesite.com/somepage";
    CookieContainer cookieJar = new CookieContainer();
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
    request.CookieContainer = cookieJar;

    request.Accept = @"text/html, application/xhtml+xml, */*";
    request.Referer = @"http://www.somesite.com/";
    request.Headers.Add("Accept-Language", "en-GB");
    request.UserAgent = @"Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)";
    request.Host = @"www.somesite.com";

    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    String htmlString;
    using (var reader = new StreamReader(response.GetResponseStream()))
    {
        htmlString = reader.ReadToEnd();
    }

    //More Code


 }

Shiryaev

0 / 0 / 0

Регистрация: 25.11.2014

Сообщений: 11

1

02.09.2020, 17:11. Показов 6068. Ответов 8

Метки нет (Все метки)


Студворк — интернет-сервис помощи студентам

Добрый день, друзья. Пытаюсь написать небольшое приложение, чтобы сохранить некоторые фотографии с сайта https://pastvu.com/. Уже в начале потерпел неудачу в виде ошибки от сервера: 400 — Недопустимый запрос. Планируется небольшое автоматическое редактирование фотографий, поэтому и использую Win.Forms.

C#
1
2
3
4
5
6
7
string Https = "https://www.pastvu.com/ps/1?f=r!1331";
string Page = "";
WebClient Client = new WebClient();
 
Page = Client.DownloadString(Https);
 
Console.WriteLine(Page);

Я так думаю, ошибка имеет фундаментальный характер, так-как всего пять строчек кода написано. Но я упорно не могу найти решение в гугле. Может быть конкретно в этом случае C# и WebClient неподходящие технологии или что-то ещё использовать нужно? Пожалуйста, кто знает, подскажите в каком направлении искать решение



0



799 / 582 / 207

Регистрация: 21.02.2019

Сообщений: 2,095

02.09.2020, 17:41

2

.. если недопустимый запрос, то, возможно, сервер ждет определенных заголовков в запросе (таких, как в запросе из браузера) … вот тут посмотрите, как добавить заголовки к запросу:
WebClient.Headers Property



1



0 / 0 / 0

Регистрация: 25.11.2014

Сообщений: 11

02.09.2020, 18:36

 [ТС]

3

carrotik, Статью посмотрел, попробовал разные заголовки подобавлять — толку нет. Попробовал «надурочка» атрибут http-equiv HTML тега<meta> в коде страницы посмотреть и добавить из него содержимое — тоже не вышло. Есть ли способ узнать какие заголовки сервер хочет?



0



3279 / 2324 / 661

Регистрация: 02.08.2011

Сообщений: 6,366

02.09.2020, 18:55

4

Цитата
Сообщение от Shiryaev
Посмотреть сообщение

толку нет

И User-Agent тоже не помогает?



1



3279 / 2324 / 661

Регистрация: 02.08.2011

Сообщений: 6,366

02.09.2020, 18:57

5

Вот что Chrome отправляет:

Миниатюры

WebClient Удаленный сервер возвратил ошибку: (400) Недопустимый запрос
 



1



3279 / 2324 / 661

Регистрация: 02.08.2011

Сообщений: 6,366

02.09.2020, 18:58

6

Можете поиграться.



1



Shiryaev

0 / 0 / 0

Регистрация: 25.11.2014

Сообщений: 11

02.09.2020, 20:22

 [ТС]

7

IamRain, carrotik, Собственно заголовок User-Agent помог. По сути добавил строку

C#
1
Client.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36");

Прямо со скриншота переписал данные. Текст страницы получил, покопался в нём и взгрустнул. Судя по всему, основной контент страницы генерируется javascript`ом и очевидным для меня методом фотографии не скачать, ибо ссылок нет. Может быть можно как-то яваскрипт выполнить, но это явно не в этой теме обсуждать надо. Буду думать, может и ручками всё сохраню.
Спасибо, всем за помощь. Теперь я знаю больше



0



484 / 439 / 123

Регистрация: 05.01.2010

Сообщений: 1,848

02.09.2020, 20:51

8

Shiryaev, на странице с конкретной фотографией в meta есть строки вида
<link rel="image_src" href="https://pastvu.com/_p/a/1/z/q/1zqpjvce6k548d5f9v.jpg">
<meta property="og:image" content="https://pastvu.com/_p/a/1/z/q/1zqpjvce6k548d5f9v.jpg">

по ним можно уже непосредственно скачать картинку



1



0 / 0 / 0

Регистрация: 25.11.2014

Сообщений: 11

02.09.2020, 22:08

 [ТС]

9

valera_21, Да, это так. Но я хотел сохранить все фотографии конкретных городов, а для этого нужно именно с той злополучной страницы работу начинать. Можно было бы по другому пойти, допустим тупо по всем ссылкам пройтись (например, начать условно с https://pastvu.com/p/0, а закончить https://pastvu.com/p/9999999) и в описании фотографий искать нужный город, но описание так же с помощью скрипта генерируется, как я понял. Улица и название фотографии в тегах есть, а города не вижу

Добавлено через 8 минут
valera_21, А нет, нашел название города в тегах. Завтра попробую тупо весь сайт прошерстить!



0



Содержание

  • Причина 1: Отсутствие прав доступа
  • Причина 2: Устаревшие данные в кэше и куки
  • Причина 3: Конфликт сайта с дополнениями браузера
  • Причина 4: Неправильные настройки сайта
  • Вопросы и ответы

«удаленный сервер возвратил ошибку (403) запрещено» в windows 10

Причина 1: Отсутствие прав доступа

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

  1. Нередко причиной появления такой ошибки является банальный программный сбой, для устранения которого достаточно будет перезагрузить страницу или перезайти в веб-приложение.
  2. Обновить страницу для устранения ошибки 403 в Windows 10

  3. Также проверьте правильность ввода адреса – возможно, вы по ошибке попытались зайти на часть ресурса, предназначенную только для администрации.
  4. Узнать правильный ввод адреса для устранения ошибки 403 в Windows 10

  5. Если вход на сайт или сервис предполагает использование учётной записи, убедитесь, что вошли в неё – иногда для защиты от спама администрация блокирует доступ к тем или иным частям ресурса незалогиненным пользователям.
  6. Войти в свой аккаунт для устранения ошибки 403 в Windows 10

  7. Также стоит иметь в виду, что новосозданные аккаунты могут быть урезаны в правах – например, в некоторых движках для форумов или сайтов возможности вроде просмотра или прикрепления вложений, скрытого текста или доступ в отдельные разделы действуют только если учётная запись проявляет полезную активность. Частным случаем этого варианта можно назвать неактивированный аккаунт. Для обеспечения защиты практически все системы используют активацию: подтверждение того, что записью владеет живой человек, для чего на привязанную электронную почту присылается специальный код, который нужно затем ввести на сайте, либо ссылка, по которой необходимо перейти. Следовательно, для решения проблемы достаточно выполнить активацию: зайдите в ваш электронный ящик и проверьте сообщения. Обращаем внимание на то, что некоторые сервисы могут помещать подобные письма в папку для спама.
  8. Активировать свой аккаунт для устранения ошибки 403 в Windows 10

  9. Последняя причина проблем с правами – умышленное ограничение со стороны администрации за нарушения правил ресурса. В такой ситуации пути два: ждать истечения срока блокировки или связаться с работниками сайта – для последнего обычно выделяется специальный раздел, но иногда приходится писать на e-mail.

Связаться с администрацией сайта для устранения ошибки 403 в Windows 10

Причина 2: Устаревшие данные в кэше и куки

Рассматриваемая проблема также может появиться после перехода ресурса на новую платформу – нередко файлы кэша и куки со старой бывают несовместимы, симптомом чего иногда и является ошибка 403. Если причиной стало именно это, устранить сбой можно очисткой cookies и хранилища данных браузера – инструкции вы найдёте по ссылкам далее.

Подробнее:
Как очистить кэш в браузерах Google Chrome, Firefox, Opera, Яндекс.Браузере
Как удалить cookies в браузерах Google Chrome, Firefox, Opera, Яндекс.Браузере

Очистить кэш и кукис браузера для устранения ошибки 403 в Windows 10

Причина 3: Конфликт сайта с дополнениями браузера

Иногда с тем или иным ресурсом могут конфликтовать отдельные плагины для интернет–обозревателей: например, такой может быть реакция на активный блокировщик рекламы или скриптовый менеджер Greasemonkey/Tampermonkey и подобные решения. В целях диагностики такие аддоны стоит отключить и попробовать зайти на сайт – если ошибка пропала, поищите альтернативы или добавьте проблемные страницы в белый список.

Подробнее: Как отключать дополнения в браузерах Google Chrome, Firefox, Opera, Яндекс.Браузере

Отключить дополнения браузера для устранения ошибки 403 в Windows 10

Причина 4: Неправильные настройки сайта

Если вы – веб-разработчик или администратор, и попытка открыть ваш же ресурс приводит к подобной проблеме, скорее всего, причина в неправильно заданных параметрах сайта. Первым делом убедитесь, что дали заглавной странице корректное название – многие платформы требуют, чтобы она называлась исключительно index. Также ознакомьтесь с документацией платформы, на которой должен хоститься ресурс, — обычно там освещаются подобные нюансы. Также проверьте разграничение прав доступа к данным в среде разработки – возможно, действует запрет на просмотр.

Еще статьи по данной теме:

Помогла ли Вам статья?

  • Удаленный сервер возвратил ошибку 403 запрещено как исправить
  • Увлажнитель воздуха поларис ошибка ef
  • Удаленный сервер не отвечает вовремя ошибка 638
  • Угрозы энергетиков отключить электричество во всем регионе переходят все рамки ошибка
  • Увлажнитель воздуха дерма ошибка е1