Apache中的这个虚拟主机文件有什么问题?

问题描述 投票:0回答:1

我正在尝试将应用程序路由到内部服务器上的子路由,使用Gunicorn和我的Django应用程序。我的虚拟主机文件如下所示:

LoadModule proxy_module /usr/lib64/apache2/mod_proxy.so
LoadModule proxy_http_module /usr/lib64/apache2/mod_proxy_http.so
<VirtualHost *:80>
        ServerName 172.16.1.81
        <Location "/mycustomapp">
            ProxyPreserveHost On
            ProxyPass http://127.0.0.1:9090
            ProxyPassReverse http://127.0.0.1:9090
        </Location>

</VirtualHost>

当我导航到172.16.1.81/mycustomapp时,在尝试导航到该路由上的应用程序时,我一直收到404未找到的错误。还有别的我在这里做错了吗?

django apache virtualhost
1个回答
0
投票

好的,我明白了。对于将来遇到此类问题的任何人,解决方案在于在VirtualHost配置中使用ServerPath指令。例如,如果您希望在172.15.1.20/app1处提供应用程序,而在172.15.1.20/app2处提供另一个应用程序(通过端口转发到侦听端口的进程),则虚拟主机配置将如下所示:

LoadModule proxy_module /usr/lib64/apache2/mod_proxy.so
LoadModule proxy_http_module /usr/lib64/apache2/mod_proxy_http.so
<VirtualHost *:80>
    ServerName 172.15.1.20

    ProxyPreserveHost On

    ProxyPass /app1 http://127.0.0.1:9090
    ProxyPassReverse /app1 http://127.0.0.1:9090

    ProxyPass /app2 http://127.0.0.1:9080
    ProxyPassReverse /app2 http://127.0.0.1:9080

</VirtualHost>
© www.soinside.com 2019 - 2024. All rights reserved.