Hosting Helper · бесплатно и без регистрации

Пошаговые руководства по запуску проектов

От первого файла до работающего приложения. Выберите задачу, выполните шаги и проверьте результат. Примеры рассчитаны на начинающих; команды выполняются на вашем компьютере или сервере, а не на Hosting Helper.

Бесплатные лимиты, интерфейсы и тарифы платформ меняются. Перед публикацией проверьте актуальные условия на официальных сайтах. Никогда не публикуйте токены и пароли в GitHub.

1. Статический сайт или лендинг — GitHub Pages / Cloudflare Pages

  1. Создайте папку проекта и файл index.html.
  2. Добавьте базовую разметку и проверьте файл в браузере.
  3. Создайте репозиторий на GitHub и загрузите index.html в корень.
  4. Для GitHub Pages: откройте Settings → Pages → Deploy from a branch → main / root → Save. Для Cloudflare Pages: подключите GitHub-репозиторий, выберите статический проект и каталог публикации, содержащий index.html.
  5. Дождитесь публикации, откройте адрес и проверьте страницы на телефоне.
  6. Добавьте заголовки, описания, навигацию, robots.txt и sitemap.xml при необходимости.
<!doctype html>
<html lang="ru">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Мой сайт</title>
<h1>Привет!</h1>
<p>Сайт работает.</p>
</html>

Проверка: адрес открывается без авторизации, а при обновлении страницы показывается новая версия. Подробнее о сайте для бизнеса.

2. Telegram-бот на Python

  1. В Telegram откройте официального BotFather, отправьте /newbot и получите токен. Сохраните его как секрет.
  2. Установите Python 3.11+ и создайте виртуальное окружение: python -m venv .venv.
  3. Активируйте окружение и установите библиотеку: pip install python-telegram-bot.
  4. Создайте bot.py по примеру ниже, задайте переменную окружения BOT_TOKEN и запустите python bot.py.
  5. Откройте своего бота, отправьте /start. Для круглосуточной работы выберите платформу с постоянным процессом либо перепишите бота под webhook.
import os
from telegram import Update
from telegram.ext import Application, CommandHandler, ContextTypes

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
    await update.message.reply_text("Бот работает!")

app = Application.builder().token(os.environ["BOT_TOKEN"]).build()
app.add_handler(CommandHandler("start", start))
app.run_polling()

Проверка: бот отвечает на /start. Не запускайте polling и webhook одновременно для одного токена. Как выбрать размещение.

3. Python API или веб-приложение

  1. Создайте папку и виртуальное окружение.
  2. Установите pip install fastapi uvicorn.
  3. Создайте main.py с примером ниже.
  4. Запустите локально uvicorn main:app --reload и откройте http://127.0.0.1:8000/docs.
  5. Для публикации выберите платформу с поддержкой Python ASGI либо VPS; настройте команду запуска uvicorn main:app --host 0.0.0.0 --port 8000 (порт должен соответствовать настройкам платформы).
  6. Включите HTTPS на внешнем прокси, храните секреты в переменных окружения, добавьте журналы и проверку работоспособности.
from fastapi import FastAPI

app = FastAPI()

@app.get("/health")
def health():
    return {"status": "ok"}

Проверка: запрос /health возвращает JSON со статусом ok. Встроенный сервер разработки не предназначен для публичного продакшена.

4. Фоновый Python-скрипт по расписанию

  1. Напишите скрипт, который можно запускать повторно без дублирования результатов.
  2. Храните ключи в секретах платформы; добавьте обработку ошибок и логирование.
  3. Для небольших периодических задач рассмотрите GitHub Actions с расписанием; учтите, что запуски по cron могут задерживаться, а доступные лимиты зависят от репозитория и тарифа.
  4. Создайте файл .github/workflows/job.yml:
name: Scheduled job
on:
  workflow_dispatch:
  schedule:
    - cron: "17 7 * * *"
jobs:
  run:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: "3.12"
      - run: python job.py

Проверка: сначала запустите workflow вручную и посмотрите журнал. Для строго гарантированного времени запуска или непрерывной обработки используйте другой способ размещения.

5. WordPress или другой сайт на CMS

  1. Выберите хостинг с поддержкой PHP и MySQL/MariaDB либо управляемый WordPress-хостинг.
  2. Подключите домен, включите HTTPS и создайте базу данных через панель хостинга.
  3. Установите WordPress штатным установщиком провайдера или по официальной инструкции.
  4. Настройте администратора с надёжным паролем и двухфакторной защитой, если доступна.
  5. Выберите тему, создайте страницы, настройте резервные копии и обновления.
  6. Проверьте восстановление из резервной копии на тестовом окружении.

Проверка: сайт доступен по HTTPS, панель администратора работает, резервная копия создаётся и восстанавливается.

6. VPS: запуск собственного сервера

  1. Оцените ресурсы, затем сравните предложения и посчитайте годовую стоимость.
  2. Создайте VPS с поддерживаемой версией Ubuntu LTS, добавьте SSH-ключ при создании.
  3. Подключитесь по SSH с компьютера: ssh user@SERVER_IP (пользователь зависит от образа провайдера).
  4. Обновите систему: sudo apt update && sudo apt upgrade -y.
  5. Создайте отдельного пользователя для приложения, ограничьте SSH-доступ, настройте межсетевой экран и разрешите только нужные порты. Не отключайте парольный вход до проверки доступа по ключу.
  6. Разместите приложение, создайте службу systemd для фонового процесса или используйте контейнеры; настройте автозапуск.
  7. Для веб-приложения настройте обратный прокси, домен и HTTPS. Добавьте мониторинг, автоматические обновления безопасности и резервные копии вне VPS.

Проверка: приложение работает после перезагрузки, SSH доступен только авторизованным пользователям, восстановление из резервной копии проверено. Подробности выбора VPS.

7. Приложение с базой данных

  1. Определите тип данных, предполагаемый объём, требования к доступности и резервному копированию.
  2. Для первого прототипа рассмотрите управляемую базу данных, чтобы не обслуживать её самостоятельно; проверьте бесплатные лимиты.
  3. Создайте базу, отдельного пользователя приложения с минимально необходимыми правами и строку подключения в секретах окружения.
  4. Создайте таблицы через миграции; не храните пароли в коде и не открывайте порт базы в интернет без необходимости.
  5. Подключите приложение, выполните тестовую запись и чтение, настройте регулярные резервные копии.
  6. Проверьте восстановление данных и поведение приложения при недоступности базы.

Проверка: данные сохраняются между перезапусками, доступ ограничен, восстановление работает.

8. Cloudflare Pages: публикация из GitHub

  1. Создайте репозиторий с index.html в корне.
  2. Откройте Cloudflare → Workers & Pages → Create → Pages → подключение GitHub.
  3. Выберите репозиторий и ветку main.
  4. Для обычного HTML-сайта не задавайте команду сборки, если она не нужна; каталог публикации должен указывать на папку с index.html.
  5. Запустите развёртывание и откройте выданный адрес pages.dev.
  6. Измените текст в GitHub и убедитесь, что после новой сборки изменения появились на сайте.

Если 404: проверьте каталог публикации и наличие index.html именно в нём. Если старая версия: проверьте статус последнего deployment и кэш браузера. Если сборка падает: проверьте логи и уберите команду сборки, не нужную для статического HTML.

Официальная документация Cloudflare Pages.

9. GitHub Pages: бесплатный сайт без сервера

  1. Загрузите index.html в репозиторий GitHub.
  2. В Settings → Pages выберите Deploy from a branch.
  3. Укажите ветку main и папку /(root) (или /docs, если файлы там).
  4. Сохраните настройки и дождитесь публикации.
  5. Проверьте URL в разделе Pages и ссылки между страницами.

Если сайт не открывается: проверьте статус публикации и настройки репозитория. Если стили или ссылки сломаны: для project site используйте относительные пути с учётом имени репозитория, а не абсолютные ссылки от корня домена.

Официальная инструкция GitHub Pages.

10. Частые ошибки при запуске Telegram-бота и Python

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

11. Контрольный список перед запуском

Когда проект готов, сравните полную стоимость и поддержите развитие бесплатных инструкций, если они помогли.

Как выбрать подходящее руководство

Начните с интерактивного подбора. Если проект не требует серверного кода — выберите статический сайт. Для webhook и API — Python API или serverless. Для постоянного polling — бот и VPS. Для CMS — WordPress-хостинг. Для важных данных — отдельное внимание базе и резервным копиям.