将 Django 站点转储为静态 HTML? [关闭]
Posted
技术标签:
【中文标题】将 Django 站点转储为静态 HTML? [关闭]【英文标题】:Dump Django site to static HTML? [closed] 【发布时间】:2010-09-26 08:57:37 【问题描述】:我确定我当地的网络托管公司不支持 Django。
他们运行 Python 2.2。 不支持mod_python
、FastCGI 或 SCGI。
不支持mod_rewrite
。
其中任何一项都会阻止我在该托管服务上将我的网站部署为 Django 应用程序。
我意识到我的网站基本上是静态的。我想知道是否可以将 Django 缓存用于文件系统,并部署该缓存中的内容。或者使用wget
递归捕获我在本地主机上运行的站点。有人做过这种手术吗?有可能吗,值得付出努力吗?
我意识到我至少有两个其他选择:
使用 php CMS 解决方案。 将我的域切换到另一个托管服务。编辑:感谢大家的建议!我已经向我的托管服务提供商发送了一封电子邮件,让他们有机会为我提供升级服务。如果他们不能通过,我正在寻找 WebFaction 作为提供者。
【问题讨论】:
【参考方案1】:我会说切换到另一个托管服务。实际上有一个french hosting service 支持 Django 并提供免费的托管包(但您只能获得 10 MB)。
【讨论】:
【参考方案2】:我使用http://www.httrack.com/ 几次将动态网站翻录成静态html,总体来说还不错。
如果您有类似 Dreamweaver 之类的工具可以在您完成后检查所有链接,这很有帮助,但取决于它有多大。
【讨论】:
【参考方案3】:Wget 有一个递归镜像选项...只需 google 即可获得 Wget 镜像。
【讨论】:
在 Wikipedia 上找到了这段代码,就像魅力一样。wget --mirror -w 2 -p --html-extension --convert-links -P $dir_prefix http://www.yourdomain.com
【参考方案4】:
Wget 带有“-m”(镜像)开关可能是您正在寻找的。这样做的“更干净”的方式可能是只获取通常由上下文处理器传递的所有内容,然后手动将其组合到您的模板中。
顺便说一句,这真是太糟糕了,伙计。 Django 的动态特性是它如此伟大的重要组成部分。如果您不打算使用荒谬的传输量(假设 > 10 GB),我可能会免费托管您。
【讨论】:
【参考方案5】:Django 的StaticGenerator 是你想要的。它旨在拉取 Django 视图并将它们保存为静态 HTML 文件。这就是我发布网站的方式 (http://nedbatchelder.com)。
更新:原始链接已消失,但包在 PyPI 上:http://pypi.python.org/pypi/staticgenerator
【讨论】:
非常感谢您提供有关如何安装和运行它的基本指南/纲要,谢谢 :)【参考方案6】:要么使用 PHP CMS 解决方案,要么获得新主机。为什么复杂的事情更进一步? (真正的问题是你为什么要使用 Django(或任何框架)来开发一个大部分是静态的网站?)
【讨论】:
网站对读者来说是静态的,但使用 CMS 界面进行创作仍然很有帮助。【参考方案7】:我的项目Cactus 允许您使用 django 构建静态站点。
【讨论】:
项目未维护...以上是关于将 Django 站点转储为静态 HTML? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
无法让 Apache 为 django 管理静态文件提供服务