6
回答
wget -N参数的问题
华为云数据库免费试用   

http://blog.dayuer.com/wget_help这里有关于wget的比较详细的使用规则

其中有一条是:

-N,  --timestamping           不要重新下载文件除非比本地文件新

但是我在测试的时候添加了这个参数,似乎不起作用

下图是最初的抓取记录

修改了page4后再次抓取

(其中page8和page9是更早的执行结果,这两次因为设置了深度为3都没有抓取page8和page9)

很明显从index到page7都是从新抓取的么。

使用的命令是wget -r -N -l 3 -k -np  http://192.168.8.113:8080/mysite/index.jsp

这是怎么回事呢?如果按照-N的解释的话,除了page4其它页面都不应该重新下载的呀!

 

举报
一段汇编
发帖于8年前 6回/2K+阅
共有6个答案 最后回答: 8年前

引用来自“张江男”的帖子

应该是下面这个原因:

 

缺少“Last-modified”文件头-- 关闭时间戳标记。

非常感谢~

引用来自“张江男”的帖子

应该是下面这个原因:

 

缺少“Last-modified”文件头-- 关闭时间戳标记。

该如何解决呢?我网上搜索了两天也没解决这个问题,对tomcat和wget都不熟悉。

是因为tomcat服务器站点的配置问题,导致wget在下载回来的文件没有last-modified文件头?还是其它什么原因呢?

我用的那个测试站点是最简单的那种:在webapps目录下建立mysite文件夹,在mysite文件夹下建立十个jsp页面,每个页面没有内容,只有指向其它页面的连接,tomcat的配置没有做任何设置,然后启动tomcat通过http://192.168.2.1:8080/mysite/index.jsp就可以访问了

http://www.gnu.org/software/wget/manual/wget.html#Time_002dStamping-Usage

官方使用手册,虽然是英文的,还是可以看的~

不是配置的问题。

如果只使用到静态页面功能的话,把你的jsp改成htm就可以了。

如果使用到动态页面的功能的话,需要重写HttpServlet.getLastModified(HttpServletRequest)方法,不过我试了一下没成功。

引用来自“张江男”的帖子

不是配置的问题。

如果只使用到静态页面功能的话,把你的jsp改成htm就可以了。

如果使用到动态页面的功能的话,需要重写HttpServlet.getLastModified(HttpServletRequest)方法,不过我试了一下没成功。

嗯,谢谢你,刚测试了下,改成htm文件是可以的,非常感谢~

顶部