博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用 Python SimpleHTTPServer 快速共享文件
阅读量:6975 次
发布时间:2019-06-27

本文共 1115 字,大约阅读时间需要 3 分钟。

使用 Python SimpleHTTPServer 快速共享文件

Fri May 28 07:01:31 -0700 2010

今天,朋友要我给它传一些照片和几个视频文件。使用QQ传了几个照片,但视频实在是太慢了。便想用HTTP。

我启动了 Mac 上的 Web sharing(它会启动 Apache),将需要的文件放到 ~/Sites 目录下,在浏览器中打开 http://localhost/~seven/ 能正常看到内容。上 ip138.com 找到我的我网 IP,在路由器上打开端口转发,NAT到我的机器上,测试使用外网IP也正常。把链接发过去,结果对方打不开。SSH 登录到一个外网服务器,使用 curl http://我的外网IP/~seven/ 果然打不开。

ping 不通。 traceroute 也不通。但我 ADSL 上网没题。后来想起了有些地方可能屏蔽了 ADSL 用户的 80 端口。但换 Apache 的端口需要改配置文件,当然,这也算不上麻烦,但我想找个更简单的方案。

打开一个 Sinatra 工程, 将内容copy到 public/ 目录里。重新设置端口转发,使用默认的 9393。确实可以访问了,证实是 80 端口被屏蔽。但 Sinatra 默认不支持文件列表。

后来Google 一下,找到一个 SimpleHTTPServer, 它是一个 Python 模块,在我的系统上是自带的。

转到照片目录下,使用

python -m SimpleHTTPServer

便以当前目录为根目录,打开一个 Web 服务器,由于默认的端口是8000,而为了避免重新设置路由器上的端口转发,我指定了 9393 端口:

python -m SimpleHTTPServer 9393

成功了,酷!

为了方便以后使用,写了个 alias 加入了我的 .bash_profile 中

alias http="python -m SimpleHTTPServer"

以后,我再想分享什么文件,只需 cd 到相关目录,执行 http 或 http 9393 就可以了。

还有一个问题,假设有人给我分享文件它又没有 Python 可怎么办呢?又 Google,发现了 Droopy: 。它打开一个 HTTP 服务,允许别人把文件上传给我。另外,还发现一个 woof: ,但没试过。

本文地址:http://www.dujinfang.com/past/2010/5/28/shi-yong-python-simplehttpserver-kuai-su-gong-xiang-wen-jian/

转载地址:http://lkrsl.baihongyu.com/

你可能感兴趣的文章
Spring boot 启动过程解析 logback
查看>>
php实现简单视图模板(视图引擎)
查看>>
[改善Java代码]多线程使用Vector或HashTable
查看>>
js事件之event.preventDefault()与event.stopPropagation()用法区别
查看>>
Ubuntu 上 执行命令 java -version 显示 没有那个文件或目录
查看>>
jQuery补充之jQuery扩展/form表单提交/滚动菜单
查看>>
Html5拖拽复制
查看>>
RDLC报表格式化format表达式
查看>>
ArcMap属性的列菜单简介
查看>>
【2011.9.20】基于CXF Web Service:Apache CXF简单部署 .
查看>>
jquery Flexigrid的使用
查看>>
Inotify + rsync
查看>>
中风从水治案
查看>>
SQL Server 内存使用量下降问题
查看>>
嵌入式驱动开发之dsp fpga通信接口---spi串行外围接口、emif sram接口
查看>>
网络协议之socks---子网和公网的穿透
查看>>
Java控制语句——if语句
查看>>
BadUSB的防范研究
查看>>
网站flash黑屏问题
查看>>
JAVA TIMER定时器
查看>>