代码之家  ›  专栏  ›  技术社区  ›  matousc

apache多主机不尊重服务器名

  •  0
  • matousc  · 技术社区  · 8 年前

    我在一台机器上有两个django应用程序。我想在相同的地址和端口上运行它们。因此,用户应该根据请求域/主机指向正确的地址。我当前的apache.conf文件如下:

    <VirtualHost *:80>
        ServerName 35.232.14.xxx
        ...
    </VirtualHost>
    
    <VirtualHost *:80>
        ServerName www.my_testing_domain.com
        ...
    </VirtualHost>
    

    请注意,django应用程序需要真实的ip地址、真实的域和其他内容。我根据文档构建文件: https://httpd.apache.org/docs/2.4/vhosts/examples.html#page-header (一个ip上有多个apache站点)和 https://www.digitalocean.com/community/tutorials/how-to-serve-django-applications-with-apache-and-mod_wsgi-on-ubuntu-14-04 (django和apache)。

    问题是,每个请求都指向第一个virtualhost(在本例中是ip地址)。如果我在apache.conf中切换它们的顺序,那么每个请求都会转到域virtualhost。

    所以其中一个站点工作正常(总是第一个)。

    为什么apache不尊重服务器名?我错过了什么?

    1 回复  |  直到 8 年前
        1
  •  0
  •   matousc    8 年前

    我用“www”添加服务器别名:

    ServerAlias my_testing_domain.com
    

    到“基于域”的虚拟主机。现在它工作了。

    推荐文章