Http.server Python (или SimpleHTTPServer для Python 2) - отличный способ передать содержимое текущего каталога из командной строки:
python -m http.server
Однако, что касается веб-серверов, это очень запутанно ...
Он ведет себя так, как будто он однопоточный, и иногда вызывает ошибки тайм-аута при загрузке JavaScript-модулей AMD с помощью RequireJS. Загрузка простой страницы без изображений может занять от пяти до десяти секунд.
Какая более быстрая альтернатива, которая так же удобна?
git instaweb
.Ответы:
http-сервер для node.js очень удобен и работает намного быстрее, чем SimpleHTTPServer в Python. Это происходит главным образом потому, что он использует асинхронный ввод-вывод для параллельной обработки запросов, а не сериализации запросов.
Монтаж
Установите node.js, если вы этого еще не сделали. Затем используйте менеджер пакетов узла (
npm
) для установки пакета, используя-g
опцию для глобальной установки. Если вы работаете в Windows, вам потребуется запрос с правами администратора, а в Linux / OSX вам понадобитсяsudo
команда:Это загрузит все необходимые зависимости и установит
http-server
.использование
Теперь из любого каталога вы можете набрать:
Путь не является обязательным, по умолчанию,
./public
если он существует, в противном случае./
.Варианты [по умолчанию]:
-p
Номер порта для прослушивания [8080]-a
Адрес хоста для привязки к [localhost]-i
Отобразить страницы указателя каталога [True]-s
или--silent
тихий режим не будет входить в консоль-h
или--help
отображает справочное сообщение и выходитПоэтому для обслуживания текущего каталога на порту 8000 введите:
источник
-g
опцию, и вы убедились, что во время установки не было напечатано никаких ошибок? Эта ошибка означает, что ее невозможно найти после установки, что маловероятно, если все пойдет хорошо. На какой ты платформе? Запустите команду find на вашем диске, чтобы найти файл с именемhttp-server
. Я успешно использовал это на нескольких разных дистрибутивах Linux и версиях Windows.Я рекомендую: Twisted ( http://twistedmatrix.com )
Он кроссплатформенный и был предустановлен на OS X 10.5 до 10.12. Помимо прочего, вы можете запустить простой веб-сервер в текущем каталоге:
подробности
Объяснение опций (см.
twistd --help
Подробнее):«web» - это команда, которая запускает простой веб-сервер поверх асинхронного механизма Twisted. Он также принимает параметры командной строки (после команды "web" - см.
twistd web --help
Подробнее):Есть также множество других команд, таких как:
Монтаж
Ubuntu
Mac OS-X (предустановлен на 10.5 - 10.12, или доступен в MacPorts и через Pip)
Windows
HTTPS
Twisted также может использовать сертификаты безопасности для шифрования соединения. Используйте это с вашими существующими
--path
и--port
(для простого HTTP) опциями.источник
sudo apt-get install python-twisted-web
сначала. (Спасибо за этот ответ, это очень удобно!)twistd --help
иtwistd web --help
. Мне понадобилось время, чтобы понять это.идти1.0 включает в себя http-сервер и утилиту для обслуживания файлов с несколькими строками кода.
Запустите этот источник, используя
go run myserver.go
или для создания исполняемого файлаgo build myserver.go
источник
Попробуйте webfs , он крошечный и не зависит от наличия платформы, такой как node.js или python.
источник
apt-get install webfs
brew install webfs
на моем Mac, что привело к🍺 /usr/local/Cellar/webfs/1.21: 5 files, 96K, built in 15 seconds
. Впоследствии я мог просто сказать,webfsd -F -p 3003 -r resources/public/ -f index.html
чтобы достичь того же, что иtwistd -no web -p 3003 --path=resources/public/
. Это немного многословно, так что не очевидно, чтобы помнить, но полезно знать как альтернативу twistd или SimpleHTTPServer.Если вы используете Mercurial, вы можете использовать встроенный HTTP-сервер. В папке, которую вы хотите подать:
Из документов :
источник
Вот еще один Это расширение Chrome
После установки вы можете запустить его, создав новую вкладку в Chrome и нажав кнопку приложений в левом верхнем углу.
У него простой графический интерфейс. Нажмите выбрать папку, затем нажмите
http://127.0.0.1:8887
ссылкуhttps://www.youtube.com/watch?v=AK6swHiPtew
источник
Также рассмотрим devd небольшой веб-сервер, написанный на go. Двоичные файлы для многих платформ доступны здесь .
Он небольшой, быстрый и предоставляет некоторые интересные дополнительные функции, такие как повторная загрузка в реальном времени при изменении файлов.
источник
Я нашел
python -m http.server
ненадежным - некоторые ответы займет несколько секунд.Теперь я использую сервер с именем Ran https://github.com/m3ng9i/ran
источник
попробуй полпетту ...
тогда ты можешь
и ты готов к работе :-)
источник
Использование Servez в качестве сервера
http://localhost:8080
или выберите «Запустить браузер»Примечание. Я создал это вместе, потому что веб-сервер для Chrome исчезает, поскольку Chrome удаляет поддержку приложений, а также потому, что я поддерживаю студентов, которые не имеют опыта работы с командной строкой.
источник
Мне нравится live-сервер . Он быстрый и имеет приятную функцию перезагрузки в реальном времени, что очень удобно во время разработки.
Использование очень просто:
По умолчанию он создает сервер с IP 127.0.0.1 и портом 8080.
http://127.0.0.1:8080/
Если порт 8080 не свободен, он использует другой порт:
http://127.0.0.1:52749/
http://127.0.0.1:52858/
Если вам нужно увидеть веб-сервер на других компьютерах в вашей локальной сети, вы можете проверить, какой у вас IP, и использовать:
А вот скрипт, который автоматически захватывает IP-адрес интерфейса по умолчанию. Работает только на macOS .
Если вы введете его
.bash_profile
,live-server
команда автоматически запустит сервер с правильным IP.источник
Если у вас установлен PHP, вы можете использовать встроенный сервер.
источник
Еще один узел на основе простого сервера командной строки
https://github.com/greggman/servez-cli
Написано частично в ответ на проблемы с http-сервером, особенно в Windows.
монтаж
Затем установите node.js
использование
Без пути он обслуживает текущую папку.
По умолчанию он служит
index.html
для путей к папкам, если он существует. В противном случае он предоставляет список каталогов для папок. Он также обслуживает заголовки CORS. При желании вы можете включить базовую аутентификацию с--username=somename --password=somepass
помощью https.источник