Как настроить запуск бота aiogram3 с использованием вебхука на облачном хостинге с панелью управления cpanel?

Как я могу настроить работу приложения через localtunnel (https://localtunnel.github.io/www/) на хостинге, если при тестировании все проходит успешно?
  • 14 января 2024 г. 11:19
Ответы на вопрос 2
Чтобы настроить запуск бота на базе библиотеки aiogram3 с помощью вебхуков на облачном хостинге с панелью cPanel и использованием localtunnel, выполните следующие шаги:

1. Загрузите свой бот-скрипт на хостинг:
   Используйте файловый менеджер cPanel или FTP-клиент, чтобы загрузить файлы вашего проекта бота на ваш хостинг.

2. Установите необходимые зависимости:
   - Войдите в оболочку SSH на вашем хостинге (если такая возможность предоставляется).
   - Используйте `pip` внутри виртуальной среды (если вы используете её) для установки aiogram и любых других зависимостей.
   ```
   pip install aiogram3
   ```

3. Настройте вебхук для aiogram:
   - Ваш бот должен предоставить точку входа для вебхуков (например, HTTPS URL).
   - Используйте метод set_webhook библиотеки aiogram для установки URL-адреса вебхука.
   - Убедитесь, что у вас есть действительный SSL сертификат, так как Telegram требует безопасного соединения. cPanel позволяет вам установить бесплатный SSL, например, через Let's Encrypt.

4. Используйте localtunnel для тестирования:
   - Если у вас нет публичного домена или вы хотите протестировать вебхук локально, вы можете использовать localtunnel.
   - localtunnel позволяет вам создать публичный URL, который будет перенаправлять трафик на ваш локальный сервер.
   - Однако, для работы localtunnel на сервере cPanel, сервер должен иметь Node.js и возможность запускать процессы из командной строки.

   Установите localtunnel через npm:
   ```
   npm install -g localtunnel
   ```

   Запустите localtunnel, чтобы создать туннель к вашему локальному серверу:
   ```
   lt --port 8000
   ```
   Здесь `8000` — это порт, на котором работает ваш локальный или удалённый бот-сервер. Localtunnel выдаст вам публичный URL.

5. Обновите URL вебхука в настройках бота:
   Используйте публичный URL, предоставленный localtunnel, для настройки вебхука вашего бота в Telegram API.

6. Запустите свой бот на сервере:
   Отредактируйте код бота так, чтобы он начинал прослушку вебхука на заданном порту и хосте, который может быть настроен в cPanel или через localtunnel URL.

7. Убедитесь в запуске бота:
   После запуска бота, проверьте его доступность и способность отвечать на сообщения.

Помните, что использование localtunnel может не быть лучшим решением для долгосрочной работы бота, так как это может быть нестабильно и не гарантирует постоянную доступность вашего бота. Для продакшн окружения рекомендуется приобрести домен и использовать постоянный адрес с SSL-сертификатом.
Решилось все добавлением в htaccess след: 
RewriteEngine On
RewriteRule ^({часть url адреса вебхука})$ http://{ip адрес сервера вебхука}:{порт сервера}/$1 [P]
Похожие вопросы