解析虚拟主机apache 2

时间:2013-04-27 06:20:18

标签: linux apache virtualhost

当我输入test1.example.com test2.example.com等地址时,我正在尝试设置我的apache服务器以访问某些文件夹。

到目前为止,我阅读并做了很多事情,但还没有成功。如果你能帮助我,我将非常感激。

所以开始我使用ubuntu 12.10作为我的桌面,我在那里设置了apache服务器。我在解析为127.0.0.1的主机中添加了example.com。到目前为止没有问题。我在apache中启用了vhost_alias和mod_rewrite,我将它用于我的虚拟服务器

NameVirtualHost *:80
UseCanonicalName Off
<VirtualHost *:80>
   ServerName example.com
   ServerAlias *.example.com

   RewriteEngine On

   RewriteCond %{HTTP_HOST} !^(www\.)?([^\.]+).example.com$
   RewriteRule ^(.*) $1 [F]

   VirtualDocumentRoot /home/example/server/projects/%1/public_html

     <Directory />
                Options FollowSymLinks
                AllowOverride all
        </Directory>
        <Directory /home/radoslav/server/projects>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride all
                Order allow,deny
                allow from all
        </Directory>

   #log file for this server
   CustomLog /var/log/apache2/example.com.log combined
</VirtualHost>

但是当我打开test.example.com时,它说浏览器可以找到test.example.com,无论我在指定的路径中有这个目录。只是为了清除apache有权读取这个目录,所以不是这个。当我从控制台ping example.com时,我得到ping但是如果我ping test.example.com我得到无法找到主机的错误。正如你所看到的那样,无论我是否正确地设置了所有内容,它都无法解决地址问题。

任何帮助人员?

1 个答案:

答案 0 :(得分:0)

您需要添加test.example.com以及要在主机文件中使用的任何其他主机名。主机文件不支持通配符。