Если вы знакомы с языком программирования Python, то наверняка умеете создавать простые веб-серверы в командной строке на Mac. Однако с новой версией Python 3 старые команды не работают, и способ создавать веб-серверы изменился.

Не переживайте, с помощью Python 3 создавать веб-серверы так же легко, изменились только команды. Мы будем использовать для инструкции MacOS, но способ работает так же на ПК с Windows и Linux. Ниже мы всё подробно объясним.
Как создать веб-сервер HTTP с помощью Python 3.0+
Очевидно, что перед тем как приступать к инструкции, вам нужно установить Python 3.0+ на свой Mac. В предыдущих версиях команды будут другими.
Введите следующую команду в командной строке:
python -m http.server
ИЛИ (в зависимости от того, как у вас называется Python 3.x):
python3 -m http.server
Нажмите клавишу return (enter), и Python 3 сразу же создаст простой веб-сервер HTTP.
Сервер http Python 3 запустится в программе Terminal, если в директории нет веб-файла.
Проверить его в браузере можно по следующему URL:
http://0.0.0.0:8000
Вся активность веб-сервера, как доступ к индивидуальным файлам, папкам, директориям и т.д., будет отображаться в окне Python в Terminal в реальном времени.
Если у вас одновременно установлены версии Python и Python3, то команду нужно будет немного изменить, чтобы она не использовалась с предыдущей версией. Чаще всего команда будет выглядеть так:
python3 -m http.server
Как с Python3 выглядит эквивалент Python -m CGIHTTPServer?
С Python также можно использовать CGI-сервер, если вам нужен эквивалент команды «python -m CGIHTTPServer». Выглядеть команда будет так:
python3 -m http.server --cgi
Если версия Python 3 установлена как обновление и называется просто Python, команда будет такой:
python -m http.server --cgi
Что делать, если возникает ошибка «/usr/bin/python: No module named http»?
Если у вас возникла ошибка «/usr/bin/python: No module named http», скорее всего, у вас просто не активен Python 3, или вы используете не ту команду из двух вариантов. Также есть шанс, что язык программирования вообще не установлен на компьютере. На Mac это менее вероятно, ведь Python2 – стандартный язык программирования в Mac OS. Если вы самостоятельно установили версию Python 3.x, она автоматически удалит Python 2.x. Чаще всего для процесса используется Homebrew.
Попробуйте использовать команду «python -m SimpleHTTPServer» для Python 2 и предыдущих версий
Простые веб-серверы Python не подойдут для полноценной работы, они скорее предназначены для быстрого тестирования. Если вы хотите создать полноценный веб-сервер, нужно использовать Apache или Nginx, хоть работа в них и будет сложнее. Также можно использовать MAMP, в которой максимально легко создавать и настраивать веб-серверы.
Комментарии