基于python2【重要】怎么自行搭建简单的web服务器
基本流程:
1、需要的支持
1)python本身有SimpleHTTPServer
2)ForkStaticServer.py支持,该文件放在python7目录下
3)将希望共享的文件放在c盘下,如:C:\游戏行业面试专用
2、打开cmd,cd c:\\python27
3、cd C:\游戏行业面试专用
4、c:\\python27\python -m SimpleHTTPServer
5、在网页中输入http://192.168.1.101:8000/
6、已可成功的下载文件等资料 # -*- coding: utf-8 -*-
#python 27
#xiaodeng
#CGI模块
#怎么自行搭建简单的web服务器 #用途:
#内网中,提供文件的共享服务非常有用,在cmd下启动运行服务器命令之后,其他电脑也是可以通过url访问的
#可以实现pdf、zip等压缩文件、exe、apk等软件的下载服务. ###搭建基本流程##
#1、假定共享文件的目录为:/home/test,ip为#192.168.1.101
'''
怎么查看本机IP?
import socket
myname = socket.getfqdn(socket.gethostname())
myaddr = socket.gethostbyname(myname)
print myaddr
''' #2、在cmd下运行下面的命令即可:
#cd C:\home\test
#c:\\python27\python -m SimpleHTTPServer #3、打开浏览器,http://localhost:端口号/路径来访问服务器资源
#如:访问http://192.168.1.101:8000;内网其他机器也可以通过服务器的IP地址来访问
#端口号,默认8000
#默认上面所定义的目录下有index.html文件,该文件为默认页面;如果没有该文件,会将目录以列表形式逐级显示出来 #4、注意事项:
#内网中,文件传输非常方便,50MB/s不是梦。但是不支持并发,只能同事有一个同事进行下载,但是这里可以通过编写新的模块来达到支持并发的目的。
#http://www.wtoutiao.com/p/jffBpc.html #ForkStaticServer.py
import socket
import SocketServer
import BaseHTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler class ForkingHTTPServer(SocketServer.ForkingTCPServer):
allow_reuse_address = 1 def server_bind(self):
"""Override server_bind to store the server name."""
SocketServer.TCPServer.server_bind(self)
host, port = self.socket.getsockname()[:2]
self.server_name = socket.getfqdn(host)
self.server_port = port def test(HandlerClass=SimpleHTTPRequestHandler,ServerClass=ForkingHTTPServer):
BaseHTTPServer.test(HandlerClass, ServerClass) if __name__ == '__main__':
test() #将上述代码保存为文件ForkStaticServer.py,
#放到Python标准库的目录下(在我的电脑上是/usr/lib/python2.7/ForkStaticServer.py),以后用下面的命令代替前面所讲的命令, 这样搭建出来的静态文件服务器就是支持并发的! #自行搭建web服务器相关的库:
import BaseHTTPServer
import SimpleHTTPServer
import CGIHTTPServer
#import HTTPServer(python3中存在)
基于python2【重要】怎么自行搭建简单的web服务器的更多相关文章
- 使用 Nodejs 搭建简单的Web服务器
使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块.文件系统.url解析模块. ...
- linux搭建简单的web服务器
主要想法是:使用虚拟机的Ubuntu系统搭建http服务器,然后在window的浏览器上测试 1.先测试windows和虚拟机上的ubuntu能否相互ping通 2.下载http.tar.gz并拷贝到 ...
- mongoDB介绍、安装、搭建简单的mongoDB服务器(一)
相关网站 1. http://www.mongodb.org/ 官网,可以下载安装程序,和doc,和驱动等. 2. http://www.mongoing.com/ 国内官方网站,博客,问题谈论等 ...
- 利用 nodeJS 搭建一个简单的Web服务器(转)
下面的代码演示如何利用 nodeJS 搭建一个简单的Web服务器: 1. 文件 WebServer.js: //-------------------------------------------- ...
- 搭建一套简单的web服务器,记录实验过程
搭建web服务器 一.实验内容: 实验要求: 1.完成一个简单的web服务器,web服务器从mysql里读取数据进行返回 2.Mysql需要有一个单独的数据盘,每个mysql虚拟机的磁盘挂载方式需要都 ...
- 一个简单的web服务器
写在前面 新的一年了,新的开始,打算重新看一遍asp.net本质论这本书,再重新认识一下,查漏补缺,认认真真的过一遍. 一个简单的web服务器 首先需要引入命名空间: System.Net,关于网络编 ...
- 代码片段 - Golang 实现简单的 Web 服务器
------------------------------ 下面一段代码,实现了最简单的 Web 服务器: 编译环境: Linux Mint 18 Cinnamon 64-bit Golang 1. ...
- 用go-module作为包管理器搭建go的web服务器
本篇博客主要介绍了如何从零开始,使用Go Module作为依赖管理,基于Gin来一步一步搭建Go的Web服务器.并使用Endless来使服务器平滑重启,使用Swagger来自动生成Api文档. 源码在 ...
- 自己动手模拟开发一个简单的Web服务器
开篇:每当我们将开发好的ASP.NET网站部署到IIS服务器中,在浏览器正常浏览页面时,可曾想过Web服务器是怎么工作的,其原理是什么?“纸上得来终觉浅,绝知此事要躬行”,于是我们自己模拟一个简单的W ...
随机推荐
- 再有人问你volatile是什么,把这篇文章也发给他
在上一篇文章中,我们围绕volatile关键字做了很多阐述,主要介绍了volatile的用法.原理以及特性.在上一篇文章中,我提到过:volatile只能保证可见性和有序性,无法保证原子性.关于这部分 ...
- C#微信接口之推送模板消息功能示例
本文实例讲述了C#微信接口之推送模板消息功能.分享给大家供大家参考,具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2 ...
- UEditor常用设置函数记录
在线文档对UEditor说明不够全面,收集了一些常用的方法和基本设置,以供参考. 1.创建编辑器 UE.getEditor('editor', { initialFrameWidth:"10 ...
- Android -- startActivityForResult和setResult
startActivityForResult与startActivity的不同之处 startActivity( ) 仅仅是跳转到目标页面,若是想跳回当前页面,则必须再使用一次startActivit ...
- 转:使用RNN解决NLP中序列标注问题的通用优化思路
http://blog.csdn.net/malefactor/article/details/50725480 /* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/ author ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十三)kafka+spark streaming打包好的程序提交时提示虚拟内存不足(Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical memory used; 2.2 GB of 2.1 G)
异常问题:Container is running beyond virtual memory limits. Current usage: 119.5 MB of 1 GB physical mem ...
- Mac OS X /home 目录权限修改
Mac OS X /home 目录权限修改 http://ju.outofmemory.cn/entry/283070 sudo vi /etc/auto_master # 注释掉 /home那一行 ...
- MFC中的KillTimer
在Dialog中添加一个Timer. 用如下的代码停用一个Timer总是不好用: void CDialog2::OnTimer (UINT TimerVal) { ////////////////// ...
- [Docker] Getting Started with Container Networks
It is possible to group containers into a network and we can create multi networks so that container ...
- [Canvas]New Running Dog
欲看效果请下载后用Chrome浏览器打开index.html观看,下载地址:https://files.cnblogs.com/files/xiandedanteng/51-NewRunningDog ...