[转]Python web 简单服务器的搭建与运行

Posted yitianbian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[转]Python web 简单服务器的搭建与运行相关的知识,希望对你有一定的参考价值。

Python web 简单服务器的搭建与运行
 
 
Python 3 服务器搭建是配置好环境变量后,在dos里cd到项目所在目录下, 输入:python -m http.server --cgi 8080
 
以下是本人在搭建过程中遇到的问题以及解决方法:
 
1、根据http://www.cnblogs.com/xuxn/archive/2011/02/14/build-simple-web-server-with-python.html,建立简单的web服务器,具体如下:

利用Python自带的包可以建立简单的web服务器。在DOS里cd到准备做服务器根目录的路径下,输入命令:

  • python -m Web服务器模块 [端口号,默认8000]
例如:
  • python -m SimpleHTTPServer 8080

然后就可以在浏览器中输入

  • http://localhost:端口号/路径
来访问服务器资源。 
例如:
  • http://localhost:8080/index.htm(当然index.htm文件得自己创建)
其他机器也可以通过服务器的IP地址来访问。

这里的“Web服务器模块”有如下三种:

  • BaseHTTPServer: 提供基本的Web服务和处理器类,分别是HTTPServer和BaseHTTPRequestHandler。
  • SimpleHTTPServer: 包含执行GET和HEAD请求的SimpleHTTPRequestHandler类。
  • CGIHTTPServer: 包含处理POST请求和执行CGIHTTPRequestHandler类。
 
2、按上述操作后出现问题:‘python‘不是内部或者外部命令
这是因为没有配置环境变量,配置如下:
计算机--右击--属性,然后在左栏找到高级系统设置 -- 环境变量,在系统变量中找到PATH,然后再加上你安装python的路径,例如我的是在后面追加:;D:Python33
 
3、按上述操作后又出现: No module named CGIHTTPServer
出现这个原因主要是上述所说的建立服务器的方法是针对python 2x,根据http://my.oschina.net/hevakelcj/blog/373830中提到的:

在Python2.6版本里,/usr/bin/lib/python2.6/ 目录下会有 BaseHTTPServer.py, SimpleHTTPServer.py, CGIHTTPServer.py

但是在Python3.4里,就没有上面的3个文件,而是合闭到了 /usr/bin/python3.4/http/server.py文件里了。

在python2.6里启动CGI服务命令是:

  • python -mCGIHTTPServer 8080
在python3.4里则是:
  • python3.4 -m http/server --cgi 8080 

 

 

端口号是可选参数。

 

4、不知道是上述内容写的有问题还是因为我的python版本是3.3.5,所以使用上述命令会报 No module namedhttp/server,重新修改如下后即可

python -m http.server --cgi 8080

5、在运行时需要将程序拷贝到  准备做服务器根目录





以上是关于[转]Python web 简单服务器的搭建与运行的主要内容,如果未能解决你的问题,请参考以下文章

Centos 中Apache服务的搭建与配置

Centos 中Apache服务的搭建与配置

Centos 中Apache服务的搭建与配置

python 怎么搭建简单的web服务器?

大数据-玩转数据-Hadoop 集群搭建和简单应用

实用的Python超简单!基于Python搭建个人“云盘”