【问题标题】:what makes domain names point a specific folder?是什么让域名指向特定文件夹?
【发布时间】:2011-12-14 22:34:47
【问题描述】:

我正在使用从某人那里继承的服务器,我不是 dns 问题的专家。 服务器托管多个域,它们都位于一个名为 /vhosts/ 的文件夹下。 我似乎无法理解域如何指向它们各自的文件夹。我检查了 httpd.config 并没有这样的指令:

<VirtualHost *>
ServerName www.domain.tld
DocumentRoot /www/domain
</VirtualHost>

我还检查了域管理员,它们都指向服务器 ip。那我错过了什么?

【问题讨论】:

    标签: apache dns httpd.conf


    【解决方案1】:

    DocumentRoot 是指示特定托管域的文件夹名称的指令。对于托管在服务器上的每个域,httpd.conf 文件中将有一个&lt;VirtualHost&gt; 节点。例如,example1.com 和 example2.com 托管在此服务器上,它们的请求分别来自 /vhosts/www/example1 和 /vhosts/www/example2。

    <VirtualHost *>
    DocumentRoot /vhosts/www/example1
    ServerName www.example1.com
    # Other directives here
    </VirtualHost>
    
    <VirtualHost *>
    DocumentRoot /vhosts/www/example2
    ServerName www.example2.org
    # Other directives here
    </VirtualHost>
    

    有时这些设置在其他配置文件中定义。其他配置文件在启动期间包含在 httpd.conf 中。如果您找不到包含它的文件,那么我建议您运行

    grep -ri "VirtualHost" /.

    【讨论】:

    • 天哪,这就是我要找的东西,非常感谢朋友! :B
    【解决方案2】:

    系统可以配置为海量虚拟主机:

    或者,虚拟主机的配置可以在通过 Include 语句引入的包含文件中声明。检查httpd.config 以获取其他虚拟主机的包含语句...

    如果一切都失败了,转到配置目录的根目录并运行以下命令:

     sudo grep -Ri www.domain.tld . 
    

    应该给你一个提示在哪里看......

    【讨论】:

      猜你喜欢
      • 2016-07-16
      • 1970-01-01
      • 2015-10-15
      • 2017-08-05
      • 2018-12-26
      • 2018-03-08
      • 2015-12-18
      • 1970-01-01
      • 2016-12-13
      相关资源
      最近更新 更多