【问题标题】:Webfaction: How do I run a Static/Perl app and Django app under the same websiteWebfaction:如何在同一网站下运行静态/Perl 应用程序和 Django 应用程序
【发布时间】:2010-05-17 20:43:28
【问题描述】:

我有一个现有的 Perl 应用程序,我要转移到一个 Webfaction 网站。我也会将 Django 应用程序添加到这个 Webfaction 网站。

我希望 Django 应用程序获得第一次调用,因此希望其 URL 路径为 /

这将允许我将任何新的 URL 添加到 urls.py 我希望随着我的应用程序的增长。

如果 URL 与 urls.py 中的任何内容都不匹配,我希望将其传递给静态 Perl 应用程序。

例如

  • /app1 -> Django
  • /app2 -> Django

urls.py 没有获取的所有其他内容我都想转到我的 Perl 应用程序

例如:

  • /index.html -> 静态/Perl 应用程序
  • /about.html -> 静态/Perl 应用程序
  • /contact.html -> 静态/Perl 应用程序
  • /apps/perlapp1.cgi -> 静态/Perl 应用程序

如何在 Webfaction 中实现这一目标?

【问题讨论】:

    标签: django


    【解决方案1】:

    为静态页面使用静态应用程序(而不是使用 django 使用简单的视图/模板呈现它们)的最大好处是在此请求中完全不涉及 django,从而提高了性能。但是如果你让 django 运行并查看所有匹配的 url,并且只在不匹配的情况下呈现静态,你就不会得到这个好处。

    我将 /static/ 用作静态应用程序的位置,将 / 用作 django 的位置。所以每个以 /static/ 开头的请求都会跳过 django 服务器。每当我想链接到静态内容时,我只需添加 /static/ 即可。

    【讨论】:

    • 问题是我无法更改现有网站的 URL。当我转到 Webfaction 时,如果用户无法访问所有现有的 url,他们会抱怨。
    • 如何使用 djnago 从这些 url 从它们的 current_location 添加到 /static/current_location 的永久重定向? (甚至可能是每个 404 - 尝试重定向到 /staic/request.path)。
    • 感谢 Ofri。我会试试看的。
    【解决方案2】:

    好吧,Webfaction 让这一切变得非常简单!在您的控制面板中,转到“网站”,编辑(或创建)网站,并在此过程中添加任意数量的新(或现有)应用程序。您可以按照自己喜欢的方式映射这些应用程序。但请注意,对于您要添加的第一个应用程序,您没有选择权(它将映射到“/”),但对于其他应用程序,您可以指定自己的路径。

    创建或编辑网站:

    添加第一个应用程序:

    添加其他应用程序(注意:现在有一个 URL 选项):

    结果:

    点击保存就完成了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-16
      • 2015-03-27
      • 2011-03-18
      • 2011-12-25
      • 2020-07-07
      • 1970-01-01
      • 2021-11-18
      • 1970-01-01
      相关资源
      最近更新 更多