, то должны увидеть список каталогов, и сервер выведет на экран строки обращения к журналам наподобие следующих:
>127.0.0.1 — [20/Feb/2013 22:02:37] "GET / HTTP/1.1" 200 -
localhost и 127.0.0.1 являются для TCP синонимами вашего локального компьютера, поэтому они сработают независимо от того, подключены ли вы к Интернету. Вы можете интерпретировать эти строки следующим образом.
• 127.0.0.1 — это IP-адрес клиента.
• Первый символ — это имя удаленного пользователя, если он присутствует.
• Второй символ — это имя авторизующегося пользователя, если требуется.
• [20/Feb/2013 22:02:37] — это дата и время доступа.
• "GET / HTTP/1.1" — это команда, отправленная веб-серверу:
• метод HTTP (GET);
• запрошенный ресурс (/, верхний уровень);
• версия HTTP (HTTP/1.1).
• Последнее число (200) — это код статуса HTTP, возвращенный веб-сервером.
Щелкните на любом файле. Если ваш браузер может распознать его формат (HTML, PNG, GIF, JPEG и т. д.), он должен отобразить его, и сервер занесет этот запрос в журнал. Например, если в вашем текущем каталоге имеется файл oreilly.png, запрос http://localhost:8000/oreilly.png должен вернуть изображение встревоженной зверушки, показанное на рис. 7.1, а в журнале должна появиться похожая запись:
>127.0.0.1 — [20/Feb/2013 22:03:48] "GET /oreilly.png HTTP/1.1" 200 -
Если у вас в этой папке находятся и другие файлы, их названия должны появиться в списке. Можете щелкнуть на одном из файлов, чтобы загрузить его. Если ваш браузер сконфигурирован так, чтобы отображать формат этого файла, вы увидите результат на экране, в противном случае браузер спросит, хотите ли вы загрузить и сохранить файл.
По умолчанию используется порт 8000, но вы можете указать любой другой:
>$ python — m http.server 9999
Вы должны увидеть следующее:
>Serving HTTP on 0.0.0.0 port 9999…
Этот сервер, написанный только на Python, лучше всего подходит для быстрых тестов. Мы можете выключить его, остановив его процесс с помощью комбинации клавиш Ctrl+C.
Вы не должны использовать этот простой сервер для загруженного производственного сайта. Традиционные веб-серверы вроде Apache и Nginx гораздо быстрее работают со статическими файлами. Кроме того, этот простой сервер не может работать с динамическим содержимым, на что оказываются способны более продвинутые серверы, принимая дополнительные параметры.