首 页 教育新闻课件中心论文中心教学教案试题中心语文专题综合下载技术教程公务员  
设为首页
加入收藏
联系我们
您当前的位置:中国教育资源网 -> 技术教程 -> 网络相关 -> 服务器 -> Web服务器 -> 技术内容 退出登录 用户管理

随心所欲下载—构造你自己的Linux网络蚂蚁Web服务器教程

论文作者:佚名  论文来源:不详  论文发布时间:2006-6-18 21:52:09  论文发布人:chjchjchj

减小字体 增大字体

              摘要:随心所欲下载—构造你自己的Linux网络蚂蚁

你是否下载过一个非常巨大的文件,以至于你不得不将你的web浏览器几个小时甚至几天的打开?假如你有一个40个文件链接在一个web页上,你又需要它——你愿意不厌期烦的一个一个的点开它们吗?再假如浏览器在工作完成前发生了故障呢?Linux 早已拥有一系列用手动的工具来对付这种情况,它完全不用使用浏览器。支持断点续传、镜像下载、计划下载等windows下载工具的所有功能:)。酷不酷?下面,就跟我来吧!


在这种方式中存在的交互性


Web浏览器是使Web具有交互性——点击然后希望结果能在几秒钟内出来。但是,即使是在很快的线路里,下载许多文件仍然需要相当长的时间。例如ISO镜像文件就被普遍用在GNU/Linux的CD-ROM发行版中。一些web浏览器,尤其是只有简单编码的浏览器,对于长时间的工作并不能很好的运作,它可能会漏掉记忆存储或者会不合时宜的发生故障。尽管将一些浏览器和文件管理器已经结合起来了,但仍然不能支持多个文件的下载及捆绑传送(就是将几个文件捆绑在一起以便于传送)。所以你不得不保持登录状态直到整个文件下载完毕。最后你还得去你的办公室点击链接开始下载,而这样你会因为共享了同事的带宽而使他很不高兴。


下载大型文件这个任务更适合另外一套工具来完成。这篇文章将告诉你怎么样把各种GNU/Linux 的应用程序结合起来,也就是lynx,wget,at,crontab等等来解决各种文件传送中的问题。我们将用到一些简单的脚本,所以有一点bash shell方面的知识对下面的学习会有帮助。


wget 应用程序


其主要分类包括wget 下载工具。


bash$ wget http://place.your.url/here


它还可以处理FTP、时间戳及递归的镜像整个web网站的目录树——如果你一不小心,整个web网站及所有别的站点就会链接到:


bash$ wget -m http://target.web.site/subdirectory


由于潜在的高负载,这个工具被放在服务器中,这个工具在下载过程中会自动根据“robots.txt”中的镜像优化下载。这里有几个命令选项以控制那些被下载,并限制跟随的链接的类型和下载文件的类型。例如:仅跟随相对链接并跳过GIF:


bash$ wget -m -L --reject=gif http://target.web.site/subdirectory


当然它支持断点续传。当将不完整的文件给予它以拼接剩余的数据时, wget能恢复被打断的下载(“-c”选项)。这个操作需要服务器的支持。


bash$ wget -c http://the.url.of/incomplete/file


断点续传可以和镜像功能结合起来,可以使一个很大的文件通过不同的会话中下载然后再拼接起来。如何使这个过程自动完成将在稍后介绍。


如果你常常像我一样经常下载的时候被中断,你可以让wget多重试几次:


bash$ wget -t 5 http://place.your.url/here


这里是说试验5次后放弃,你也可以使用“-t inf”表示不放弃直到得到结果。


那么如何使用防火墙代理下载呢?使用http_proxy环境变量或者是 .wgetrc配置文件指定一个代理服务器,通过它下载。如果使用断点续传通过代理服务器下载的话,是会失败的。因为代理一个断点续传的话,代理服务器仅能存储一个文件的不完全的拷贝。当你试图使用"wget -c"以获得文件的剩余部分时,代理服务器会核对存储文件,并会给出错误的信息告之你已经有了整个文件。为了成功的绕过文件的存储过程,我们通过在下载请求中加上一个特殊的头信息骗过代理服务器


bash$ wget -c --header="Pragma: no-cache" http://place.your.url/here


“--header”选项可以加入任何头信息的数字或者约定的字符串,这样我们就可以修改web服务器和代理器的性能。一些站点拒绝对通过外面来源链接的文件提供服务,只有来源于经过它同意的站点的其他页面时,文件内容才可以传送到浏览器当中。你可以通过添加一个“Referer:”头信息来传送文件


bash$ wget --header="Referer: http://coming.from.this/page" http://surfing.to.this/page


一些特殊的非公众的web站点只能将内容发送到一些特别的类型的浏览器中。可以使用“User-Agent:”头信息发送:


bash$ wget --header="User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)" http://msie.only.url/here


(注意:以上提供的技巧是被使用在满足内容许可机制的情况下使用。否则,将是违法的行为。)


指定下载的时间


如果你想在你办公室的与你的同事共用一根线路的电脑里下载大型文件,想象一下他们因为原本像畅快的小溪一样的线路突然便得像爬虫一样慢而发怒的样子,你就会考虑将你的文件传送时候改在非高峰使用期了。你不必在等到每个人都离开后还呆在办公室里,也不必在饭后在家中远程登录。你只要在工作日程安排程序中做以下设置:


bash$ at 2300
warning: commands will be executed using /bin/sh
at> wget http://place.your.url/here
at> press Ctrl-D


我们设定在晚上23点的时候开始下载。我们要做的就是确信atd这个日程安排守护进程还在工作^&^。


下载要花好几天?


当你下载的一个或多个[] [返回上一页] [打 印] [收 藏]  

上一篇技术:Linux架设FTP服务器之一Web服务器教程
下一篇技术:Linux架设FTP服务器之三Web服务器教程
 ∷相关技术评论  (评论内容只代表网友观点,与本站立场无关!) [查看发表评论...]
 
 中国教育资源网免费技术教程下载中心-站内广告 站内广告 中国教育资源网免费技术教程下载中心-站内广告 
 中国教育资源网站内搜索 站内搜索 中国教育资源网站内搜索 
 

   
 中国教育资源网免费技术教程下载中心-栏目导航 栏目导航 中国教育资源网免费技术教程下载中心-栏目导航 
· Windows 9XMEXP · Windows NT20002003
· LinuxBSD · 系统综合
· IISApache · 硬件技术
· Web服务器 · FTP服务器
· 邮件服务器 · 域名服务器
· Windows服务器 · 代理服务器
· 服务器综合
 
中国教育资源网免费技术教程下载中心-相关教程  相关技术 中国教育资源网免费技术教程下载中心-相关教程
· [组图] 随心所欲玩转DVD--豪
· [图文] 随心所欲定制Office
· [组图] 利用EXCEL做成绩快速
· [图文] 随心所欲控制Word下
· 我有我主张!随心所
· 随心所欲地上网聊天
· 随心所欲的上网聊天
 中国教育资源网免费技术教程下载中心-本月热门教程 本月热门 中国教育资源网免费技术教程下载中心-本月热门教程 
 
 中国教育资源网免费技术教程下载中心-本日热门论文 本日热门 中国教育资源网免费技术教程下载中心-本日热门论文 
 
关于本站 - 网站帮助 - 免费课件 - 美容 - 绿色软件 - 软件下载 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 网站留言
浙ICP备06010405号 Email:cnkjz@163.com 技术支持:名流设计
版权所有 Copyright© 2002-2004 名流