Подтвердить что ты не робот

Python -m SimpleHTTPServer - Прослушивание 0.0.0.0:8000, но http://0.0.0.0:8000/test.html дает "Страница не найдена"

После cding в мою папку я введи

python -m SimpleHTTPServer

и получим

Serving HTTP on 0.0.0.0 port 8000 ...

в ответ. Но когда я нажал http://0.0.0.0:8000/test.html, я получил сообщение об ошибке, не найденной.

Я также пробовал

pushd /path/you/want/to/serve; python -m SimpleHTTPServer; popd

взято из этого вопроса

Когда я нажимаю ls, я вижу файл и каталог. Кто-нибудь знает, что я делаю неправильно?

4b9b3361

Ответ 1

Я думаю, что два других ответа пытаются дать понять, что 0.0.0.0 не является URL-адресом, который вы должны посетить. Когда веб-сервер Python (например, cherrypy) говорит, что он работает на 0.0.0.0, это означает, что он прослушивает весь трафик TCP, который заканчивается на этом компьютере, независимо от имени хоста или IP-адреса, который был запрошен. Но если вы измените его так, чтобы сокет прослушивал 127.0.0.1 или "localhost" , тогда, если запрос не был специально указан для этого IP/hostname, он не будет отвечать на запрос. Например, много раз вы можете использовать имя своего компьютера вместо localhost (например, ubuntu). Если ваше имя машины - "brian", и у вас есть сервер, прослушивающий 0.0.0.0:8080, вы сможете достичь этого сервера с помощью http://brian:8080. Но если этот сервер прослушивает "localhost" , даже если "brian" настроен на "localhost" , сервер не получит сообщение.

Вы также должны быть уверены, что файл действительно находится в каталоге, в котором вы используете команду. В противном случае ответ 404 на самом деле правильный:)

Удачи!

Ответ 3

Вы должны использовать эту ссылку http://127.0.0.1:8000/ и можете видеть все файлы там

Ответ 4

Вы должны ввести ip-адрес компьютера, к которому подключен, например, 192.168.0.2:8000 Измените это на ip-адрес вашего сервера.

Ответ 5

Попробуйте перейти на http://localhost:8000/test.html или http://127.0.0.1:8000/test.html (эти два должны быть точно такими же, если файл ваших хостов не является абсолютно сумасшедшим).

0.0.0.0 обычно используется Windows как "не подключенный" IP-адрес, а также может использоваться как своего рода подстановочный знак при работе с IP-адресами. Я немного запутался в том, почему ваш HTTP-сервер пытается разместить на 0.0.0.0. Возможно, вам придется отредактировать некоторые файлы конфигурации и установить его на "localhost" или "127.0.0.1".

Ответ 6

  • создать каталог, например. mkdir HTTPServer_dir
  • перемещение внутри папки cd HTTPServer_dir
  • ввод команды (в соответствии с версией python) python -m SimpleHTTPSever 8000 (или порт, который вы хотите)
  • зайдите в браузер и введите http://127.0.0.1:8000/

Готово!!!

Вы можете создать простую страницу index.html внутри HTTPServer_dir, чтобы вы могли видеть html-страницу вместо списка каталогов

Ответ 7

Запустите ifconfig в Linux или ipconfig в Windows, чтобы найти IP-адрес сервера.

$ sudo ifconfig
wlan0     Link encap:Ethernet  HWaddr 30:3a:64:b3:be:6a  
          inet addr:192.168.1.103  Bcast:192.168.1.255  Mask:255.255.255.0

Здесь, в случае, если URL был бы следующим:

http://192.168.1.103:8000/test.html