Почему не работает, телеграм вебхук с контроллером Yii2?

Всем привет. Наверняка кто-то уже сталкивался с проблемой. Прошу поделиться.
Почему телеграм webhook работает только со ссылкой на обработчик, который находится в корне сайта. С ним проблем нет, приходит все, что отправишь боту. А если указать ссылку на контроллер, то не работает.
Если что: enableCsrfValidation = false;
В конфиге прописал разрешение для контроллера:

Какие еще ему нужны разрешения?
Ссылка на контроллер такого вида: https://site.ru/bot/bot

Дополнительно:

и как определили что не работает?

  • ThunderCat, не приходят данные.
  • Александр,
    и как определили что не работает?
  • Александр, как проверяли? Логи смотрели? Реквесты?
  • ThunderCat,
  • Dmitry Bay, точно такой же код в корне сайта отрабатывает хорошо. В контроллере нет. Как понять в чем причина?
  • Александр,
    Сделайте аналог запроса через postman. Это довольно быстрое решение.
    Сделайте запись всех запросов raw/post/get на контроллер в базу данных (я именно так и сделал, удобно очень).
    Посмотрите логи веб сервера.

    Может у вас тупо сервер фигово настроен, и вы вините бота.

  • Dmitry Bay, бота не виню. Непонятно почему не работает только через Yii2 контроллер.
  • Александр, Чувак, все работает. Я сейчас настраиваю бота. Разбирайтесь и делайте логи запросов.
  • Dmitry Bay, совет на все времена)))
  • Александр, А чего вы ожидаете ? сделайте лог .
  • Александр, У сервера есть лог запросов. Открываешь, смотришь глазками, есть ли запросы к /web/bot/bot
    Если нет - проблема в боте, если есть - проблема в ю. Смотришь лог ошибок, так как вряд ли что-то "не работает" просто так.
  • ThunderCat,
  • Александр, Ну значит запросы приходят, и проблема не в боте.

    Смотришь лог ошибок, так как вряд ли что-то "не работает" просто так.

    "Руками" этот урл открывается? Там же разрешен гет, открой да проверь что там происходит. Логи смотри, что за ошибки вываливаются.

  • ThunderCat, руками открывается.
  • Александр, Пипец, как маленький ребенок, все за ручку... значит гет работает, проверяй пост, сделай форму с теми же пост данными что приходят от бота, проверь как отрабатывает... Или постмэном постучись.
  • Вопрос решен, но не могу сказать как именно.
  • Ответы:

    если работает с файлом корне то каие проблемы?

    может контролер авторизацмию требует или еще что

    • Нужно делать запросы к БД средствами Yii. Из корня этого не сделать.

     

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

     

      • Почему не работает, телеграм вебхук с контроллером Yii2?Есть ответ
      • 07.04.2024
      Ответить

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

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

      1. Убедитесь, что у вас установлен composer, который используется для установки зависимостей Yii2. Если composer не установлен, его можно скачать с официального сайта и установить.

      2. Создайте контроллер, который будет обрабатывать запросы от телеграм бота. Убедитесь, что ваш контроллер наследуется от yii\web\Controller.

      3. В контроллере определите метод действия, который будет обрабатывать входящие запросы от телеграм. Например:

      4. Зарегистрируйте маршрут для вашего контроллера в файле конфигурации приложения (config/web.php). Например:

      5. Убедитесь, что у вас есть SSL-сертификат для вашего сайта, так как телеграм требует использование HTTPS для вебхуков.

      6. Наконец, установите вебхук, используя API телеграм, указав URL вашего контроллера. Например:

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

    Оставить комментарий