25

我已经确定我当地的网络托管公司不能支持 Django。

  • 他们运行 Python 2.2。
  • 不支持mod_python、FastCGI 或 SCGI。
  • 不支持mod_rewrite.

其中任何一项都会阻止我在该托管服务上将我的网站部署为 Django 应用程序。

我意识到我的网站基本上是静态的。我想知道是否可以将 Django 缓存用于文件系统,并部署该缓存中的内容。或者wget用于递归捕获我在 localhost 上运行的站点。有人做过这种手术吗?有可能吗,值得付出努力吗?

我意识到我至少有两个其他选择:

  • 使用 PHP CMS 解决方案。
  • 将我的域切换到另一个托管服务。

编辑:谢谢大家的建议!我已经向我的托管服务提供商发送了一封电子邮件,让他们有机会为我提供升级服务。如果他们无法通过,我将WebFaction视为提供者。

4

7 回答 7

17

Django 的 StaticGenerator 就是你想要的。它旨在拉取 Django 视图并将它们保存为静态 HTML 文件。这就是我发布我的网站 ( http://nedbatchelder.com ) 的方式。

更新:原始链接消失了,但包在 PyPI 上:http: //pypi.python.org/pypi/staticgenerator

于 2008-12-11T04:10:10.167 回答
13

带有“-m”(镜像)开关的Wget可能是您正在寻找的。这样做的“更干净”的方法可能是只获取通常由上下文处理器传递的所有内容,然后手动将其组合到您的模板中。

顺便说一句,这真是太糟糕了,伙计。Django 的动态特性是它如此伟大的重要组成部分。如果您不打算使用荒谬的传输量(假设 > 10 GB),我可能会免费托管您。

于 2008-12-11T02:26:28.143 回答
5

我的项目Cactus允许您使用 django 构建静态站点。

于 2012-09-16T20:39:23.613 回答
4

我曾多次使用http://www.httrack.com/将动态网站翻录成静态 html,总体来说还不错。

如果您有类似 Dreamweaver 之类的工具可以在完成后检查所有链接,这很有帮助,但这取决于它有多大。

于 2008-12-11T02:09:53.263 回答
1

我会说切换到另一个托管服务。实际上有一个支持 Django 并提供免费托管包的法国托管服务(但您只能获得 10 MB)。

于 2008-12-11T02:05:54.910 回答
1

Wget有一个递归镜像选项......只是谷歌的 Wget 镜像。

于 2008-12-11T02:11:37.003 回答
0

要么使用 PHP CMS 解决方案,要么获得新主机。为什么复杂的事情更进一步?(真正的问题是你为什么要使用 Django(或任何框架)作为一个主要是静态的站点?)

于 2008-12-11T04:26:49.900 回答