Создайте мгновенный веб-сервер с помощью командной строки терминала и Python
Оглавление:
Хотите быстро поделиться файлом, протестировать код или транслировать что-то? Вы можете мгновенно создать веб-сервер из текущего каталога, используя только python, да, без apache, без nginx, без litespeed, только с python, который в наши дни поставляется почти со всеми вариантами Unix. Команда удивительно проста, учитывая, насколько она полезна, и проверьте ее самостоятельно, открыв окно терминала и любой веб-браузер.
Этот трюк мгновенно запускает простой веб-сервер, используя только Python, он работает в Mac OS X, Linux, FreeBSD и любых другая платформа unix с python.
Как запустить мгновенный веб-сервер с помощью Python
Чтобы создать мгновенный веб-сервер из командной строки, введите следующее в любом каталоге, который вы хотите сделать доступным через браузеры и HTTP:
Запуск простого веб-сервера в Python 2
python -m SimpleHTTPServer
Запуск простого веб-сервера в Python 3
python -m http.server
Это немедленно опубликует текущий каталог в качестве веб-сервера, поэтому, если у вас есть файл index.html, который будет отображаться немедленно, в противном случае он просто перечислит содержимое каталога либо на вашем локальном IP-адресе, либо на « 0.0.0.0”. Обратите внимание, что порт 8000 является настройкой порта по умолчанию для этой функции, что означает, что для доступа к веб-серверу из браузера необходимо ввести следующий адрес: http://0.0.0.0:8000
Помните, что без файла index.htm или index.html в каталоге вместо этого в браузере отобразится простой список каталога CWD/PWD.
После запуска терминал будет обновляться по мере загрузки страниц и данных с веб-сервера Python, показывая стандартную информацию журнала http, такую как запросы GET и PUSH, какие файлы доступны и кем, 404 ошибки, IP-адреса, даты, время и все, что вы ожидаете от стандартного журнала HTTP, как если бы вы следили за файлом журнала доступа Apache.
Вы можете стать более изощренным, если хотите, и указать порт, давая некоторый уровень неясности веб-серверу, если вы надеетесь транслировать что-то только конкретному человеку или если вы просто не не хочу, чтобы он отображался при стандартном сканировании портов 8000.Все, что вам нужно сделать, это указать номер порта в конце вышеупомянутой команды, например:
python -m SimpleHTTPServer 4104
Это приведет к запуску веб-сервера в текущем каталоге с IP-адресом с портом 4104, например, давайте предположим, что IP-адрес локального хоста: http://127.0.0.1:4104 или http:// 0.0.0.0:4104 в зависимости от ваших настроек.
Это очень полезный совет, если вы занимаетесь быстрой веб-разработкой и хотите сразу проверить ее в браузере или показать кому-то еще, и не хотите тратить время на sftp или зафиксируйте его в репозитории. Это должно работать на любой операционной системе Unix, включая FreeBSD, Linux, Ubuntu, Redhat и, конечно же, Mac OS X.
Видео ниже демонстрирует запуск сервера python в каталоге с простым файлом index.html, а также показывает, как запущенная команда python отражает происходящее с http-соединением, как обычный http-сервер log будет:
Сообщите нам, если вы найдете какое-либо особенно полезное применение или дополнительные секреты для этого замечательного маленького трюка.