У меня есть веб-сайт с доверенным сертификатом SSL версии 3. Я получил 4 файла от эмитента SSL, один из которых является сертификатом домена, размещенным на сервере.
Чтобы установить веб-хук для моего бота, я пробовал:
Простой метод setWebhook в режиме URL:
https://api.telegram.org/bot447278997:*******************************nZW0/setWebhook?url=https://example.com/webhookMethod
setWebhook
с помощью Curl. Я загрузил каждый из 4 файлов от эмитента сертификата, а также файл, содержащий все 4 файла в случайном порядке. (команда curl распознала мой сертификат как самоподписанный и вернула ошибку SSL(60), поэтому мне пришлось добавить в команду--insecure
слово, чтобы игнорировать проверку сертификата и просто отправить его). вот команда:curl --insecure -F "url=https://example.com/webhookMethod" -F "[email protected]" https://api.telegram.org/bot447278997:****************************nZW0/setWebhook
Ни один из вышеперечисленных методов не заставил мой веб-хук работать. вызывая метод getWebhookInfo
, я каждый раз получал ошибку, например:
{
"ok":true,
"result":{
"url":"https://example.com/webhookMethod",
"has_custom_certificate":true,
"pending_update_count":7,
"last_error_date":1518169667,
"last_error_message":"Wrong response from the webhook: 302 Found",
"max_connections":40
}
}
В некоторых попытках has_custom_certificate
превратилось в False
или last_error_message
изменилось на что-то вроде not verified certificate
или SSL error
и т. д.
Кроме того, я протестировал свой веб-сервис с Postman с проверкой SSL, и все это настроено и работает. Я также знаю, что Telegram не поддерживает SSL версии 2 и 3, но поддерживает самозаверяющие сертификаты. Теперь, когда я отправляю им проверенный сертификат версии 3, он должен работать, верно?
Любая помощь приветствуется заранее.