Telegram · Гайд

Как разместить Telegram-бота на хостинге

Обновлено October 11, 2026 5 мин чтения

На этой странице
  1. Шаг 1: создайте бота в BotFather
  2. Polling или webhook?
  3. Шаг 2a: бот на Python (python-telegram-bot)
  4. Шаг 2b: бот на JavaScript (grammY)
  5. Лимиты и правила Telegram для ботов
  6. Хостинг Telegram-ботов в HytHost
  7. FAQ

Telegram-бот отвечает только пока работает его код. Запустите его на ноутбуке — и он замолчит, как только ноутбук уйдёт в сон. Поэтому рано или поздно любому боту нужно место, которое всегда включено.

В этом гайде весь путь: создание бота через BotFather, выбор между polling и webhook, рабочий пример на Python и на JavaScript, лимиты и правила Telegram и как держать бота онлайн 24/7.

Шаг 1: создайте бота в BotFather

  1. В Telegram откройте @BotFather и отправьте /newbot.
  2. Задайте боту отображаемое имя, затем username: от 5 до 32 символов, латинские буквы, цифры и подчёркивания, в конце — bot, например my_shop_helper_bot.
  3. BotFather пришлёт токен вида 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11. У кого токен — тот управляет ботом, поэтому не храните его в коде и никому не передавайте. Если он утёк, отправьте BotFather команду /token и получите новый.

Ещё две полезные команды BotFather: /setcommands задаёт список команд, который пользователи видят при вводе /, а /setprivacy определяет, что бот видит в группах. По умолчанию режим приватности включён, и в группе бот получает только адресованные ему команды и ответы на свои сообщения — если вы не сделаете его администратором.

Polling или webhook?

Бот получает сообщения от Telegram одним из двух способов — и никогда обоими одновременно:

Long pollingWebhook
Как работаетБот постоянно спрашивает у Telegram новые сообщения через одно открытое соединениеTelegram отправляет каждое обновление на ваш HTTPS-адрес
Что нужноТолько исходящий доступ в интернетДомен, действительный сертификат и порт 443, 80, 88 или 8443
Подходит дляПочти любого бота, и проще всего в размещенииОчень нагруженных ботов или serverless-платформ

Начните с polling. Ему не нужны домен, сертификат и открытый порт, и его поддерживают все библиотеки. Если на токене когда-либо был установлен webhook, сначала вызовите deleteWebhook — пока webhook активен, polling не работает.

Боты на polling работают на хостинге ботов HytHost без домена и открытых портов — Python или Node.js от €0.89/мес.

Тарифы хостинга ботов

Шаг 2a: бот на Python (python-telegram-bot)

python-telegram-bot 22 требует Python 3.10 или новее. Установите его командой pip install python-telegram-bot и создайте bot.py:

import os
from telegram import Update
from telegram.ext import Application, CommandHandler, ContextTypes, MessageHandler, filters

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
    await update.message.reply_text("Hi! Send me a message and I will echo it.")

async def echo(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
    await update.message.reply_text(update.message.text)

def main() -> None:
    application = Application.builder().token(os.environ["TELEGRAM_TOKEN"]).build()
    application.add_handler(CommandHandler("start", start))
    application.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, echo))
    application.run_polling(allowed_updates=Update.ALL_TYPES)

if __name__ == "__main__":
    main()

aiogram 3 — второй популярный вариант на Python, тоже для Python 3.10 или новее.

Шаг 2b: бот на JavaScript (grammY)

grammY — активно поддерживаемый фреймворк для Telegram на Node.js. Выполните npm install grammy и создайте bot.js:

const { Bot } = require("grammy");

const bot = new Bot(process.env.TELEGRAM_TOKEN);
bot.command("start", (ctx) => ctx.reply("Welcome! Up and running."));
bot.on("message:text", (ctx) => ctx.reply(ctx.message.text));

process.once("SIGINT", () => bot.stop());
process.once("SIGTERM", () => bot.stop());
bot.start();

В старых туториалах используется Telegraf, у которого не было релизов с февраля 2024 года; для нового бота grammY — более надёжный выбор.

Лимиты и правила Telegram для ботов

Лимиты из FAQ Telegram по ботам:

  • Примерно одно сообщение в секунду в одном чате, 20 сообщений в минуту в группе и около 30 сообщений в секунду в целом.
  • Файлы: бот может отправлять до 50 MB и скачивать до 20 MB.
  • Опрашивать Telegram может только одна копия бота одновременно. Вторая получит Conflict: terminated by other getUpdates request — для тестов используйте отдельный токен.

Правила: условия Telegram для разработчиков ботов запрещают спам, непрошеные сообщения и обход лимитов. Боту нужна политика конфиденциальности (если своей нет, действует стандартная от Telegram), и он обязан удалять данные пользователя по запросу. Автоматизация личного аккаунта вместо бота — так называемый юзербот — совсем другое дело, и Telegram блокирует аккаунты, используемые для флуда или спама.

Хостинг Telegram-ботов в HytHost

На наших тарифах хостинга ботов работают и Telegram-боты, и Discord-боты:

  1. Выберите тариф и среду выполнения — Python для python-telegram-bot или aiogram, Node.js для grammY. Во вкладке Startup выберите Python 3.10 или новее либо актуальную версию Node.js.
  2. Загрузите код через файловый менеджер или SFTP вместе с requirements.txt или package.json.
  3. Поместите токен в файл .env или в переменную окружения, а не в код.
  4. Запустите бота. При polling боту не нужны домен и открытый порт; если он упадёт, панель его перезапустит.

Что разрешают наши правила: ботов на официальном Bot API с токеном от BotFather. Запрещены: юзерботы, автоматизирующие личный аккаунт, непрошеные массовые рассылки, сбор данных пользователей или групп и боты, которые скачивают и распространяют медиа без прав на них. Бот, нарушающий эти правила, блокируется.

В тарифы входят база данных MySQL и резервные копии. Делаете ещё и Discord-бота? Смотрите гайд как сделать Discord-бота.

Держите Telegram-бота онлайн 24/7 без своего ПК: хостинг ботов на Python или Node.js от €0.89/мес., перезапуски включены.

Тарифы хостинга ботов
FAQ

Частые вопросы

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

Polling — почти для любого бота: ему не нужны домен, сертификат и открытый порт. Webhook подходит для очень нагруженных ботов или serverless-платформ и требует HTTPS на порту 443, 80, 88 или 8443. Один токен не может использовать оба способа одновременно.

Отправьте /token в @BotFather и выберите бота, чтобы получить новый токен, затем обновите его везде, где работает бот. Храните токен в переменной окружения или в файле .env, но никогда в коде, которым вы делитесь.

Две копии бота опрашивают Telegram с одним и тем же токеном — например, одна на вашем ПК, другая на сервере. Остановите одну из них, а для тестов используйте отдельного бота и токен.

Совсем немного. Типичному боту на Python или Node.js, который отвечает на команды, обычно хватает 512 MB; ботам, которые обрабатывают изображения или держат в памяти много данных, нужно больше.

Ваш Telegram-бот онлайн 24/7

Хостинг ботов HytHost запускает вашего Telegram-бота на Python или Node.js с автоматическими перезапусками, базой данных MySQL и резервными копиями — от €0.89/мес.

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

Этот гайд был полезен?