2013-01-12 125 views
1

我试图在OSX 10.8.2上设置开发服务器。部署的网站名称是mattat.org.il,所以我想将其设置为mattat.devApache 2上的虚拟主机不能正常工作

这些是我遵循以下步骤:

  1. 未注释的包括用于虚拟主机,在httpd.conf

    Include /private/etc/apache2/extra/httpd-vhosts.conf

  2. 添加虚拟主机httpd-hosts.conf

    NameVirtualHost *:80 
    <VirtualHost *:80> 
    DocumentRoot "/Users/matanya/Sites/matat" 
    ServerName mattat.dev 
    </VirtualHost>` 
    
  3. 添加的服务器名称etc/hosts

    127.0.0.1 localhost 
    255.255.255.255 broadcasthost 
    ::1    localhost. 
    fe80::1%lo0 localhost 
    127.0.0.1 mattat.dev 
    
  4. 重启动Apache的。

现在,当我去localhost它带我到我的虚拟主机设置的目录,而不是把我的根目录下(即Sites)。 当我转到mattat.dev时,它未被识别为有效的网址,并简单解释为Google搜索。

我错过了什么?

+1

您是否尝试过'http:// mattat.dev',因为.dev不是有效的顶级域名,您的浏览器不会将其视为网址。同时检查你的'httpd.conf'中是否还有一个默认配置,否则Apache将导致虚拟主机,而不管它传递了什么服务器名称。 – PassKit

+0

谢谢!这确实有效。但是为什么'localhost'也送我到那里? – Matanya

+0

好吧,明白了。我明确地将“localhost”添加到我的虚拟主机,现在它可以工作。另外,不用'http://',可以在最后添加一个正斜杠,供浏览器识别。 – Matanya

回答

2

.dev不是有效的TLD,您的浏览器不会将其视为网址。 http://mattat.dev应该可以工作。

对于不识别本地主机,请检查您的httpd.conf中是否有缺省目录,以便Apache在没有找到虚拟主机时重新启动,或者为本地主机添加第二个虚拟主机。

<Directory "/Users/matanya/Sites/"> 
    Options Indexes 
    Order allow,deny 
    Allow from all 
</Directory>