【问题标题】:How to download website files from a server如何从服务器下载网站文件
【发布时间】:2015-02-12 11:22:39
【问题描述】:

我有一个网站托管在服务器 ***.***.**.**

我想下载一个文件夹,public_html,其中包含我的网站文件。

如何按顺序完整地下载包含所有子目录的文件夹?

我正在使用:

binary
cd public_html
lcd D:\websiteFiles
mget */*

但是,问题是这会将public_html 及其子文件夹的所有内容转储到websiteFiles 中而没有子文件夹。

在下载时如何维护public_html 及其所有子文件夹的结构?

我想在 windows 7 cmd 中执行此操作,而无需借助 fireftp、filzilla 等 ftp 工具......

【问题讨论】:

    标签: windows ftp cmd


    【解决方案1】:

    另一种方法是使用wget 来执行此操作。只要您的系统上安装了wget,以下命令就应该可以工作:

    wget --mirror -p --convert-links -P . http://example.com/public_html
    

    您可能需要在请求中添加 Referer 标头:

    --header "Referer: exampe.com"
    

    另一种方法是使用rsync

    rsync -avz -e ssh <username>@<server>:/public_html/ /www/
    

    你可以在这里下载wgethttps://www.gnu.org/software/wget/

    scp 命令也可用于实现此目的:

    scp -r <username>@<server>:/public_html /www/
    

    您可以安装cygwin 以使用rsyncscp

    【讨论】:

    • 感谢您的回复,旋风。我曾尝试过 wget,甚至是这种方法:wget --mirror -p --convert-links -P . http://example.com/public_html 之前。问题是我只能访问 404.html 文件和 cgi-sys 文件夹。该站点的根目录中有许多文件夹。我从 public_html 什么也没得到。
    • @user3663765 - 看起来很奇怪。您可以尝试添加Referer 标头,例如:wget --header "Referer: example.com" --mirror -p --convert-links -P . http://example.com/public_html。能否给我一个页面链接,以便我自己尝试?
    【解决方案2】:

    这是有效的:

    wget -m ftp://username:password@ip.of.old.host
    

    ...

    【讨论】:

      猜你喜欢
      • 2013-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-23
      • 1970-01-01
      相关资源
      最近更新 更多