远程是ftp的,ftp协议支持读取文件的修改时间,根据修改时间就可以分辨了。
远程是web的,并且你的内容是任意内容(当然你要通过web下载有些扩展名的文件,可能要在web服务器的设置里添加很多允许下载扩展名mime)那你需要一个目录清单,假设你是asp.net,最保险就是自己写一个,具体:首先初始化一份log类文件,里面存着需要维护的文件和文件夹的当前初始信息,这些信息主要包括文件(夹)名,大小、修改时间、md5码、是否还有子文件或目录。再在全局文件Global.asax里建立一个线程,每隔一定时间调用方法扫描一次你需要维护的文件和文件夹,更新log文件,也可以作一个页面当被访问了再去核对当前需要维护的文件和文件夹与log文件的不同,再记录新信息并且直接返回新log,这样可以让php这类没有默认的全局的后台web语言一样能行。当然这些事情也可以通过直接的exe程序,当然这对远程服务器的要求就更高了。
本地只要定时去得到这个log文件就可以根据它来选择下载那些文件了
如果不能维护log,也不能取得修改时间,那你只能先把文件之一下载下来,算出md5然后与当前的本地的比对,按照结果来决定换不换成新服务器上的文件,然后下一个。。。。
最保险的是保留以前的文件的MD5码,想看文件有没有被改掉就用重新运算一个MD5和原值比较。文件修改时间可以参考,但是如果对方恶意篡改,可以把自己电脑时间调整到文件原来的时间,改动文件并保存后文件的修改时间也看不出变化。
文件大小也可以拿来做个参考依据,但要精确到B。但对方更改后和源文件大小完全一样的情况也是有的,并不保险。
可以做的,首先确认一下文件名.ok ,这里的文件名包括后缀名么?
-----------------------------------------------------------------------
下载附件测试一下。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)