Иногда разработчику нужно быстро проверить, как выглядит или работает статический сайт — без настройки полноценного сервера вроде Apache или Nginx. К счастью, в Python есть встроенный модуль, который позволяет запустить простой HTTP-сервер буквально одной командой.
Что такое статический сайт?
Статический сайт — это набор файлов, которые не требуют выполнения серверного кода. Обычно он состоит из:
- index.html — основной HTML-файл;
- CSS-файлов — для стилей;
- JavaScript-скриптов — для интерактивности;
- Изображений, шрифтов и других медиафайлов.
Такой сайт не использует базы данных, PHP, Node.js или другие серверные технологии — всё содержимое уже готово к отдаче браузеру.
Запуск локального сервера с помощью Python
Если у вас установлен Python 3, вы можете воспользоваться встроенным модулем http.server. Для этого выполните следующую команду в папке с сайтом:
python3 -m http.server 8000
После чего можно открыть сайт в браузере:
http://localhost:8000
Одна команда — и всё работает.
Ограничения и особенности
Важно понимать, что встроенный сервер Python — это инструмент для разработки, а не решение для продакшена. Вот несколько ключевых моментов:
- Он не предназначен для работы под высокой нагрузкой — но спокойно справляется с десятком запросов в секунду, что более чем достаточно для локальной отладки.
- Не поддерживает HTTPS, кэширование, gzip-сжатие и другие функции, важные для публичных сайтов.
- Работает только на вашей машине (localhost), если вы не настроите проброс портов вручную.
Тем не менее, для быстрой проверки верстки, тестирования JavaScript или демонстрации коллеге — это один из самых простых и надёжных способов «оживить» статический сайт.