Oli*_*r H 5 mod-proxy django virtualhost
我的服务器上有多个 django 应用程序,每个应用程序都在自己的虚拟主机中运行,绑定到不同的端口。(我这样做是为了隔离每个 WSGIProcessGroup)。
现在,为了简单起见,我想将每个应用程序代理到端口 80。
对于一个应用程序,我做这样的事情:
Listen 8101
<VirtualHost 127.0.0.1:8101>
WSGIProcessGroup app1
WSGIDaemonProcess app1 display-name=%{GROUP}
WSGIScriptAlias /app1 "/var/django_apps/app1/app1.wsgi"
</VirtualHost>
<VirtualHost *:80>
ProxyPass /app1 http://localhost:8101/app1
ProxyPassReverse /app1 http://localhost:8101/app1
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
现在,为了简单地启用或禁用某些应用程序,当我运行另一个应用程序时,我有另一个 .conf 文件包含以下内容:
Listen 8102
<VirtualHost 127.0.0.1:8102>
WSGIProcessGroup app2
WSGIDaemonProcess app2 display-name=%{GROUP}
WSGIScriptAlias /app2 "/var/django_apps/app2/app2.wsgi"
</VirtualHost>
<VirtualHost *:80>
ProxyPass /app2 http://localhost:8102/app2
ProxyPassReverse /app2 http://localhost:8102/app2
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
但是这第二个<VirtualHost *:80>
没有使用,考虑到 apache 配置语法,这似乎很正常。
但是,我希望将这一点配置放在应用程序声明的旁边,这样我就可以将属于一起的内容放在一个文件中。
有什么我可以做的吗?我正在考虑以某种方式使用 include 指令,但我对 apache 配置知之甚少,而且我认为我无法自己找到解决方案:)
你怎么认为?
干杯
该include
指令可以让您像这样构建代理配置:
代理.conf:
<VirtualHost *:80>
Include app1_proxy.conf
Include app2_proxy.conf
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
app1_proxy.conf:
ProxyPass /app1 http://localhost:8101/app1
ProxyPassReverse /app1 http://localhost:8101/app1
Run Code Online (Sandbox Code Playgroud)
app2_proxy.conf:
ProxyPass /app2 http://localhost:8102/app2
ProxyPassReverse /app2 http://localhost:8102/app2
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2044 次 |
最近记录: |