使用python2与python3创建一个简单的http服务(基于SimpleHTTPServer)

python2与python3基于SimpleHTTPServer创建一个http服务的方法是不同的;

一、在linux服务器上面检查一下自己的python版本;如:

[root@zabbix ~]# python -V
Python 2.7.5

如果是在2.7的环境下创建,则使用如下命令;

[root@zabbix ~]# python -m SimpleHTTPServer 8880
Serving HTTP on 0.0.0.0 port 8880 ...

后面8880端口是手动指定的。默认为8000; 这样就启动了一个http的服务,目前是监听状态;再打开一个窗口进行访问下;

[root@zabbix ~]# curl -I http://127.0.0.1:8880
HTTP/1.0 200 OK
Server: SimpleHTTP/0.6 Python/2.7.5
Date: Tue, 21 May 2019 10:32:37 GMT
Content-type: text/html; charset=UTF-8
Content-Length: 2106


再回到第一个窗口看一下监听状态;已经有访问了;

[root@zabbix ~]# python -m SimpleHTTPServer 8880
Serving HTTP on 0.0.0.0 port 8880 ...
127.0.0.1 - - [21/May/2019 18:32:37] "HEAD / HTTP/1.1" 200 -

二、在python3中创建http服务:

[root@zabbix flask]# python -V
Python 3.6.6

现在我使用python3.6版本来创建http服务;python3.6中要使用http.server来创建。与python2略微不同;

[root@zabbix flask]# python -m http.server 8880
Serving HTTP on 0.0.0.0 port 8880 (http://0.0.0.0:8880/) ...

这样就启来了。so easy;

如上,接下来再新开一个窗口来访问下;

[root@zabbix ~]# curl -I http://127.0.0.1:8880
HTTP/1.0 200 OK
Server: SimpleHTTP/0.6 Python/3.6.6
Date: Tue, 21 May 2019 10:37:07 GMT
Content-type: text/html; charset=utf-8
Content-Length: 369


成功了;再返回第一个窗口看看;
[root@zabbix flask]# python -m http.server 8880
Serving HTTP on 0.0.0.0 port 8880 (http://0.0.0.0:8880/) ...
127.0.0.1 - - [21/May/2019 18:37:07] "HEAD / HTTP/1.1" 200 -

可以看到没有问题;

原文地址:https://www.cnblogs.com/hsggj/p/10901625.html