【问题标题】:Converting a dynamic PHP/mySQL website to an archived HTML version?将动态 PHP/mySQL 网站转换为存档的 HTML 版本?
【发布时间】:2011-06-21 12:35:07
【问题描述】:

我有一个不再添加任何新内容的 PHP/mySQL 站点。但我想保留我所拥有的档案并保持在线。理想情况下,我想将其转换为静态站点,以便它不再需要数据库。

如果其他人经历过这个过程,是否有任何工具、脚本或方法可以自动执行此过程或至少使此过程更容易?我希望能够做一些事情,例如确保所有链接仍然有效(因此必须以某种方式将它们转换为正确指向新的静态版本),诸如此类。

我可以通过 ssh 访问相关服务器。我对 PHP 和 Python 都比较熟悉,所以使用这些语言的工具是理想的。

注意:我这样做有两个基本原因:

  1. 成本,因为仅托管一组静态文件比托管动态网站便宜得多(我正在使用 NearlyFreeSpeech 并且根据我正在使用的带宽,我估计我的成本将低于每月 1 美元)。
  2. 垃圾邮件发送者不知何故找到了我的网站并继续注册帐户(此时,他们无论如何都无法制作 cmets,但这仍然很烦人)。

【问题讨论】:

  • 与技术方面完全无关的是,这是我祖母的纪念网站,这就是垃圾邮件发送者注册更烦人的原因。我很想无限期地保持网站运行,这就是为什么我也需要降低成本。在这一点上,网站上所有有话要说的人都说了他们的话。

标签: php python dynamic static archive


【解决方案1】:

如果您对任何 linux 机器具有 shell 访问权限(甚至您自己的网络服务器就足够了),我建议您使用 wget 爬取并下载您自己站点的镜像。 Wget 是一个实用程序,旨在将站点镜像为平面文件,并且已经使用了相当长的一段时间。我相信它应该对你有好处:

http://www.gnu.org/software/wget/manual/wget.html

我希望这会有所帮助。

克里斯

【讨论】:

  • 是的,我已经使用 wget 进行了一次递归下载。那时我意识到所有的链接都需要重写。这就是为什么我想知道是否有工具或脚本也可以解决这个问题。
【解决方案2】:

我最近使用了以下效果很好:

wget --mirror -w 2 -p --html-extension --convert-links -P folder_to_save_to http://mysite.com

您可能需要使用 wget 脚本的完整路径。这将更改所有链接,使您的网站完全静态且独立。

【讨论】:

    【解决方案3】:

    使用 PHP,您可以编写一个简单的脚本来执行此操作:

    1. 保存当前页面。
    2. 点击该页面的链接并保存这些页面(每个页面从 1 开始重复)。
    3. 将当前页面上的 URL 替换为指向已保存页面的 URL。

    【讨论】:

      猜你喜欢
      • 2012-09-18
      • 1970-01-01
      • 2011-12-26
      • 1970-01-01
      • 2011-12-16
      • 2011-09-28
      • 2014-03-06
      • 2023-03-07
      • 2020-10-08
      相关资源
      最近更新 更多