在本地主机上设置子域名

在本地主机上设置子域名

我一直在尝试在本地开发环境中设置子域。dev.localhost我使用的是 Ubuntu 11.10 和 Apache2。到目前为止,我已经编辑了主机文件以包含行127.0.0.1 dev.localhost。我创建了一个名为的文件,axis如下/etc/apache2/sites-available所示:

<VirtualHost *:80>
    DocumentRoot /var/www/Axis/trunk
    ServerName dev.localhost
    ServerAlias *.localhost

    <Directory /var/www/Axis/trunk/>
            Options Indexes FollowSymLinks MultiViews +Includes
            AllowOverride None
            Order allow,deny
            allow from all
    </Directory>
</VirtualHost>

然后,我使用 启用了该站点sudo a2ensite axis。我遇到了没有主机名的错误,并将该行添加ServerName localhost到我的default文件中sites-available。我还遇到了与有关的错误NameVirtualHost,我通过NameVirtualHost *:80在 中添加httpd.conf并在 中将其注释掉来解决了这个问题ports.conf

现在,当我导航到 时,dev.localhost我得到的网页与导航到 时得到的网页相同localhost。换句话说,和都localhost指向dev.localhost/var/www但我想dev.localhost指向/var/www/Axis/trunk

知道我哪里做错了吗?谢谢

编辑:输出自apache2ctl -S

ulimit: 88: error setting limit (Operation not permitted)
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
     default server localhost (/etc/apache2/sites-enabled/000-default:1)
     port 80 namevhost localhost (/etc/apache2/sites-enabled/000-default:1)
     port 80 namevhost dev.localhost (/etc/apache2/sites-enabled/axis:1)
Syntax OK

答案1

您需要设置您的/etc/hostsC:\Windows\system32\drivers\etc\hosts(作为管理员)以反映“子域”。因此,请将其添加127.0.0.1 dev.localhost到任一文件(取决于您的平台)。

但是,就域名解析而言,“localhost”本身可能有些特殊,因为它可能无法用作域。因此,您可以改为输入诸如mylan.local服务器名称和dev.mylan.local子域之类的内容。(基本上,您可以在此处使用任何您想要的内容)

最后,不要忘记重新加载 Apache,apache2ctl restart因为它需要重新加载其配置。

相关内容