【问题标题】:mod_wsgi: How to run different apps under single domain?mod_wsgi:如何在单个域下运行不同的应用程序?
【发布时间】:2016-05-22 22:13:16
【问题描述】:

我有一个域 example.com,我在那里运行一个标准的 Apache(提供静态文件和 PHP)。我想在 subdomain.example.com 上运行 Python 服务页面。

我设法配置 Apache 来执行此操作,并且在 subdomain.example.com 上运行了一个 Flask 应用程序。但是,在虚拟主机配置文件中,整个子域对这个单个应用程序来说是紧密的。我想更进一步,在这个子域上运行几个不同的应用程序。

例如:

subdomain.example.com/app1/ 将运行 /var/www/apps/app1/app.wsgi subdomain.example.com/app2/ 将运行 /var/www/apps/app2/app.wsgi

等等……

此外,我希望这是全自动的,即当我在 /var/www/apps/ 中设置新文件夹时,我可以通过 Apache 访问应用程序而无需进一步配置。

我可以看到几种方法:

  1. 配置 Apache 以路由每个 subdomain.example.com 请求 到 Python 中将运行特定应用程序的单个“元应用程序” 基于给定的 URL。
  2. 使用 Apache 配置做一些神奇的事情来处理 这是自动的。
  3. 也许使用 nginx?这个我真的没有太多经验 但有人告诉我这可以解决问题。

有没有关于如何做到这一点的最佳实践?谢谢。

【问题讨论】:

    标签: python apache flask mod-wsgi vhosts


    【解决方案1】:

    看起来您应该能够通过向WSGIScriptAlias 指令提供目录路径(在您的情况下为/var/www/apps)来执行此操作。在这里阅读更多:

    https://modwsgi.readthedocs.org/en/develop/configuration-directives/WSGIScriptAlias.html

    这似乎是比使用元应用更简洁的解决方案。

    【讨论】:

      猜你喜欢
      • 2018-06-08
      • 1970-01-01
      • 1970-01-01
      • 2015-08-21
      • 2017-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多