KakPo4initECP |
|
Статус: Новичок Группы: Участники
|
Не работает ЭЦП. «Не удалось проверить цепочку сертификатов, возможно не установлена актуальная цепочка сертификатов» И «Подробности: Функция отзыва не смогла произвести проверку отзыва для сертификата» При попытке подписания в ЭТРАНе выдает ошибку : Ошибка безопасности. Проверьте правильность установки криптопро 2.0. Недопустимая строка с указание класса. Утилита для тестирования всего ПК на предмет правильности установки и настройки всех параметров выдает следующие ошибки: Проверка SSL соединения с pkitrans.ru Проверка посылки данных через SSL соединение Тестовая подпись Тест CAPICOM Проверка TSP Проверка OCSP |
|
|
Андрей Писарев |
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 457 раз |
Здравствуйте. Какие версии продуктов используете (полностью версию напишите)? Рекомендуется использовать актуальные версии криптопровайдеров. Для чего установлены КриптоПРО CSP и ViPNet CSP в одной ОС? Если требуется ViPNet CSP — можете получить сертификат и использовать только ViPNet CSP, без установки КриптоПРО CSP? |
Техническую поддержку оказываем тут |
|
|
WWW |
goker08 |
|
Статус: Новичок Группы: Участники
|
Добрый день! |
|
|
Андрей Писарев |
|
Статус: Сотрудник Группы: Участники Сказал «Спасибо»: 457 раз |
Автор: goker08 Добрый день! Здравствуйте. Обратитесь в тех.поддержку этого АРМ. Цитата: Недопустимая строка с указанием класса Вероятно выполняется попытка вызвать COM-объект, который не зарегистрирован в системе. |
Техническую поддержку оказываем тут |
|
|
WWW |
Пользователи, просматривающие эту тему |
Guest |
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Hello,
I have a test server where https port is set to ask for a client certificate (it can be done via command line : netsh http add sslcert ipport=0.0.0.0:443 certhash=XXhashXX appid={XXappidXX} clientcertnegotiation=enable).
When I send an https request with THttpRequest.Request, I should have a 12044 error (ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED), but I have an error 12019 (ERROR_INTERNET_INCORRECT_HANDLE_STATE).
I think there is a problem with the conditions in procedure TWinHTTP.InternalSendRequest. I propose the following modification :
L := length(aData);
if not _SendRequest(L) or
not WinHttpAPI.ReceiveResponse(fRequest,nil) then begin
**if fHTTPS and IgnoreSSLCertificateErrors and (GetLastError=ERROR_WINHTTP_CLIENT_AUTH_CERT_NEEDED) then begin**
if not WinHttpAPI.SetOption(fRequest,WINHTTP_OPTION_SECURITY_FLAGS,
@SECURITY_FLAT_IGNORE_CERTIFICATES,SizeOf(SECURITY_FLAT_IGNORE_CERTIFICATES)) then
RaiseLastModuleError(winhttpdll,EWinHTTP);
if not WinHttpAPI.SetOption(fRequest,WINHTTP_OPTION_CLIENT_CERT_CONTEXT,
pointer(WINHTTP_NO_CLIENT_CERT_CONTEXT),0) then
RaiseLastModuleError(winhttpdll,EWinHTTP);
if not _SendRequest(L) or
not WinHttpAPI.ReceiveResponse(fRequest,nil) then
RaiseLastModuleError(winhttpdll,EWinHTTP);
**end else
RaiseLastModuleError(winhttpdll,EWinHTTP);**
end;
Thank you !
Я столкнулся с проблемой отправки HTTP-запроса с использованием wininet api, когда запрос отправляется через прокси-сервер.
У меня есть приложение mfc, которое отправляет запросы на сервер. для отправки запроса используется
HttpSendRequest
функции wininet. Мне нужно, чтобы файл был загружен с помощью этого. для этого необходимо отправить 3-4 запроса, связанных с каждым файлом. Когда есть прокси, я не могу загрузить более 3 файлов за раз. После этого запросы не отправляются должным образом. Как только он заблокирован, все отправленные запросы после этого не получают надлежащего ответа (возникает какое-то исключение). Я сделал добавление учетных данных прокси, используя
InternetSetOption(hConnect, INTERNET_OPTION_PROXY_USERNAME, (LPVOID)lpUname, nUnameBuffer);
InternetSetOption(hConnect, INTERNET_OPTION_PROXY_PASSWORD, (LPVOID)lpPswrd, nPswrdBuffer);
когда приложение будет скорректировано, тогда оно будет одобрено для следующих 3 файлов. также его работоспособность, если настройки прокси отключены.
Кто-нибудь знает, почему это происходит? есть ли какой-либо предел для запроса с использованием функций wininet под прокси? пожалуйста, помогите решить эту проблему. hellpp me plzzzzz
заранее спасибо.
Если вы являетесь владельцем сайта, который вдруг начал выдавать подобные ошибки, вам важно понимать, что они означают, причину их возникновения и способ их устранения.
Часто на различных форумах в интернете можно увидеть обсуждения на тему устранения ошибок на сайте. Порой возникшие проблемы незначительны и могут быть решены пользователем самостоятельно, без обращения к специалистам.
Для того, чтобы знать, что делать в непредвиденной ситуации, стоит познакомиться с описанием самых распространенных ошибок, а также прочитать руководство по их устранению.
Типы ошибок
Ошибки протокола HTTP возникают в случае, если веб-сервер по какой-то причине не может успешно отправить пользователю запрашиваемый документ. В этом случае сервер сообщит пользователю в HTTP-заголовке код возникшей ошибки.
Коды ошибок бывают положительными и отрицательными или успешными и не успешными.
Всего существует 4 типа кодов (хх — сочетание любых цифр):
- 2xx — запрос выполнен успешно
- 3xx — запрос успешно перенаправлен — тоже положительный код.
- 4xx — ошибка — документ не был отправлен пользователю, так как произошла критическая ошибка. Класс кодов 4xx предназначен для указания ошибок со стороны клиента.
- 5xx — ошибка сервера — критическая ошибка на сервере. Коды 5xx выделены под случаи неудачного выполнения операции по вине сервера.
Наибольший интерес для владельца сайта представляют коды, указывающие на ошибки со стороны клиента или сервера. Причины возникновения и способы устранения данных ошибок представлены ниже.
Ошибка 400 — “Плохой запрос”
При переходе на сайт браузер может выдавать “400 Bad Request”. Это означает, что сервер обнаружил синтаксическую ошибку в запросе, который ввел пользователь. Однако, подобная ошибка может появляться не только когда вы вводите адрес сайта, но и, например, при входе в панель управления вашим сайтом. Причин возникновения может быть несколько:
- Блокировка браузера антивирусом
- Блокировка брендмауэра Windows браузером
- Большое количество файлов cookies и данных в сache
- Перебои в работе интернета
Для того, чтобы определить, какой из перечисленных вариантов относится к вашей ситуации, необходимо провести п проверку каждого из них до полного устранения проблемы. Начнем с первой возможной причины.
Блокировка браузера
- Изучите настройки вашего антивируса в разделе под названием “Правила для приложений” или схожим с ним.
- Проверьте, есть ли ваш браузер в списке и каков уровень доверия к нему
- Повысьте уровень доверия к вашему браузеру, если он низкий
- Сохраните новые настройки и попробуйте снова зайти в панель управления
Если ошибка сохраняется, то переходите к проверке следующей причины.
Блокировка брендмауэра Windows
- Попробуйте отключить брендмауэр на время: меню Пуск — Панель управления — Система и безопасность — Брандмауэр Windows — Включение и отключение
- очистите кэш и куки
- обновите страницы с ошибкой
- Если проблема устранена, то для завершения добавьте в брандмауэр разрешенные программы: Пуск — Панель управления — Система и безопасность — Брандмауэр — Разрешение запуска программы через брандмауэр.
Если проблема осталась — продолжайте проверку.
Cache и cookies
- Удалите cookies и очистите cache: нажмите Shift + Ctrl + Delete в то время, когда браузер открыт.
- Удалите ненужные файлы
- Проверьте работу вашего браузера
Перебои в работе интернета
- Свяжитесь со своим интернет-провайдером и узнайте, проводятся ли у них какие-то работы
- Уточните, сколько времени займут работы
Ошибка 403 — Доступ запрещен
Ошибка 403 означает, что сервер не может выполнить запрос из-за запрета на доступ к запрашиваемым файлам или страницам. Эта ошибка может возникать по ряду причин. Рассмотрим самые распространенные:
- Индексный файл index.html не загружен в директорию public_html вашего сайта или является некорректным. Для устранения этой ошибки создайте файл с именем index.html или переименуйте уже имеющийся файл. Возможные варианты для имени файла: index.html, index.htm, или index.php.
- Для директории, в которой находится запрашиваемый файл, установлены такие права, что веб-сервер Apache не смог прочитать файл на диске сервера. Для устранения этой ошибки попробуйте изменить права доступа в разделе, отвечающем за настройку прав.
- Файлы сайта загружены в неправильную директорию. Для устранения этой ошибки проверьте, располагаются ли файлы сайта в директории site/public_html, где site — название вашего сайта.
Ошибка 404 — Файл не найден
Ошибка 404 означает, что сервер не может найти данные по запросу пользователя.
Причины возникновения данной ошибки:
- Некорректный URL, введенный в адресное поле браузера. Для устранения данной ошибки проверьте, корректно ли указана ссылка.
- Файл, запрашиваемый по URL, отсутствует на сервере. Для устранения этой ошибки необходимо проверить наличие запрашиваемого файла в директории public_html вашего сайта.
Ошибка 500 — Внутренняя ошибка сервера
Ошибка 500 означает, что на сервере есть внутренняя ошибка. Эта проблема может возникнуть по двум причинам:
- Невозможно запустить скрипт. Скорее всего указаны неправильные права доступа на папки и файлы. Если на PHP файлы скриптов, размещенных на вашем хостинге, стоят права доступа 777, то исполнение данных скриптов может быть заблокировано сервером. Происходит это из-за того, что права доступа 777 позволяют всем производить любые изменения с данным файлом, что существенно влияет на безопасность и целостность вашего сайта. Для устранения этой ошибки следует проверить права доступа на папки и файлы сайта. Для папок рекомендовано установить права доступа 755, для исполняемых скриптов 600, а для всех остальных файлов 644.
- Неправильная инструкция в файле .htaccess или наличие в нём неподдерживаемых директив. Возможно, вы ошиблись в написании названия нужной директивы или параметров к ней. Данную ошибку можно устранить, включив лог ошибок error.log. Веб-сервер укажет вам, какую конкретно директиву он посчитал ошибочной — ее нужно будет исправить.
Ошибка 502 — Bad Gateway
Данная ошибка — результат запроса, при котором был получен недопустимый ответ от сервера. Причин возникновения проблемы может быть несколько:
- Проблемы в работе прокси-сервера. Для устранения этой ошибки попробуйте набрать в адресной строке браузера ссылку на какой-либо другой сайт. Тем самым вы можете проверить, есть ли доступ в Интернет вообще. Если вы обнаружили, что доступ в Интернет есть, но ваше обращение к конкретному сайту все равно дает ошибку 502, попробуйте удалить файлы cookies в браузере.
- Нехватка ресурсов сервера. Это может означать, что нагрузка на сервер превышает ресурсы, доступные на выбранном тарифе хостинга. Уточните у своего хостинг-провайдера о тарифах с большим объемом ресурсов и, в случае необходимости, увеличьте оперативную память или доступный объем диска.
Ошибка 503 — Service Temporarily Unavailable
У каждого аккаунта на сервере хостинга есть определенное количество рабочих процессов, выделенное в соответствии с выбранным тарифным планом. Работа с запросами ведется в порядке очереди, они поступают на сервер, где легкие запросы обрабатываются мгновенно, а тяжелые – медленно. Всякая очередь ограничена тем или иным количеством запросов. Если новый запрос находится за пределами этой границы, принят он не будет и вместо результата браузер выдаст оповещение “Сервис временно недоступен”.
Чтобы исправить данную ошибку нужно знать причины, по которым она может появляться:
- Зависание скриптов при передаче больших статичных файлов через PHP. Скрипты работают определенное время, а не постоянно. При окончании времени работы скрипта прерывается передача файла, соответственно файл не будет передан полностью, а также запрос оставит процесс веб-сервера работать еще длительное время. Устранить ошибку вы сможете посредством следующих шагов:
- Проверить все компоненты и плагины вашей CMS, отключая их по очереди, и найдите самые тяжёлые или испорченные, при работе которых загрузка сайта замедляется. По возможности откажитесь от таких компонентов, либо поищите более быстрый аналог.
- Проверить наличие у вас медленных запросов- в папке logs вашего аккаунта создается файл mysql-slow.log. Информация в этом файле обновляется раз в сутки и содержит только самые проблемные SQL-запросы.
- Если в PHP-скриптах используются Include-функции, загружающие части движка, расположенные на одном аккаунте, убедитесь, что в них используется локальный путь, а не URL вида «http://…». Наличие URL заставляет сервер делать дополнительный HTTP-запрос — это занимает лишнее время и сильно замедляет загрузку сайта.
- Большое количество запросов к серверу. Причин возникновения таких запросов несколько:
- Загружаемый ресурс разбит/содержит ссылки на слишком больше число файлов (картинки, таблицы стилей JS-скрипты), которые подгружаются через отдельные запросы. В этом случае следует объединить ресурсы в один файл, где это возможно.
- DDoS-атаки, флуды, спамы в комментарии так же могут вызывать большое количество запросов. В случае DDoS-атаки, необходимо определить ее тип, и, согласно ее уровню, предпринять действия по устранению. Подробнее о том, что необходимо делать, если ваш сайт под DDoS-атакой, мы писали в одной из статей нашего блога.
Действия при появлении ошибки
Перечисленные ошибки могут возникать довольно часто, поэтому знание причин их возникновения и способов устранения помогут вам самостоятельно решить появившуюся проблему, экономя время на ожидании ответа и поиска причины технической поддержкой.
Выберите надежный и мощный хостинг.
Если вы посмотрите на InnerException
, вы увидите, что:
«Удаленное имя не может быть разрешено: ‘www.fc.edu'»
Этот URL-адрес не работает и в моем браузере.
Чтобы получить ответ HTTP, клиент должен иметь возможность общаться с сервером (даже для того, чтобы получить ошибка 404) и в вашем случае произошла ошибка на уровне DNS.
В некоторых браузерах есть автозаполнение для таких случаев, когда, если определенный URL-адрес не найден, браузер повторяет другой суффикс/префикс, например:
try "x"
if didn't work, try "www." + x
if this didn't work try "www." + x + ".com"
if this didn't work try "www." + x + ".net"
if this didn't work try "www." + x + "." + currentRegionSuffix.
Но обратите внимание, что вы можете изменить свой код:
catch (Exception e)
{
}
To:
catch (HttpRequestException e)
{
Console.WriteLine(e.InnerException.Message);
}
И вы сможете узнать, что вызывает вашу ошибку.
Кроме того, Вы никогда не должны пытаться поймать общий Exception
, если метатель не выбрал общий Exception
, и даже больше, никогда не поймать и ничего не делать с исключением, по крайней мере, log он.
Обратите внимание, что, поскольку вы ждете только одной задачи, которую вы можете использовать:
urlTester.RunTestAsync().Wait();
Вместо:
Task.WhenAll(urlTester.RunTestAsync());
Task.WhenAll
создает новый Task
, когда данный Task
завершен. в вашем случае вам понадобится Task.WaitAll
или Task.WhenAll(...).Wait()
.