【问题标题】:Virtualhost in Apache (wildcard and static domain)Apache 中的虚拟主机(通配符和静态域)
【发布时间】:2011-09-30 05:38:17
【问题描述】:

我遇到了一些奇怪的情况。我想为一个域创建不同的 DirectoryRoot。

example.com -> /dir1 www.example.com -> /dir1

*.example.com -> /dir2

我正在尝试使用 NameVirtualHost 和 ServerAlias 进行设置。你能帮忙吗?

【问题讨论】:

    标签: apache dns subdomain virtualhost


    【解决方案1】:

    试试这个,你可以使用apachelocation指令来强制root目录

    <VirtualHost *:80>
        ServerName example.com
        ServerAlias www.example.com
        DocumentRoot /var/www/dir1
    <VirtualHost>
    
    <VirtualHost *:80>
        ServerName *.example.com
        DocumentRoot /var/www/dir2
    <VirtualHost>
    

    记住第一个 VirtualHost 优先。

    【讨论】:

      【解决方案2】:

      试着像...

      NameVirtualHost *:80
      
      <VirtualHost *:80>
          DocumentRoot = /var/www/dir1
          ServerName d1.example.com
      <VirtualHost>
      
      <VirtualHost *:80>
          DocumentRoot = /var/www/example
          ServerName example.com
      <VirtualHost>
      
      <VirtualHost *:80>
          DocumentRoot = /var/www/someotherdir
          ServerName other.example.com
          ServerAlias *.example.com
      <VirtualHost>
      

      取自我的工作设置(显然修剪了一点!)

      【讨论】:

      • DocumentRoot = /var/www/wildcard ServerName other.example.com ServerAlias *.example.com 这不起作用。它只是为 other.example.com 分叉。当我浏览 aaaa.example.com 时,正在加载内容形式 /var/www/example 而不是 /var/www/wildcard
      猜你喜欢
      • 2017-12-12
      • 2010-10-19
      • 2014-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-09
      相关资源
      最近更新 更多