Apache2 虚拟主机 ServerAlias 不工作

Apache2 virtualhost ServerAlias not working

我正在使用 Laravel 5.4 .(Apache 2.4.8)

/etc/hosts:

127.0.0.1 project.local

/etc/apache2/sites-available/project.conf

<VirtualHost *:80>
DocumentRoot /var/www/html/project/public
ServerName project.local
ServerAlias *.project.local
<Directory /var/www/html/project/public>
   Options Indexes FollowSymLinks
   AllowOverride all
   Order Deny,Allow
   Deny from all
   Allow from all
</Directory>

命令:

sudo nano /etc/hosts
sudo nano /etc/apache2/sites-available/project.conf
sudo a2ensite project.conf
sudo service apache2 reload

project.local ~> 作品

somesubdomain.project.local 或 www.project.local ~> 不工作。

有什么帮助吗?谢谢

您仍然需要在您的主机文件中为您要访问的每个子域添加一个条目:

/etc/hosts

127.0.0.1 project.local www.project.local somesubdomain.project.local

请注意主机文件不支持通配符域。例如:

127.0.0.1 *.project.local # WILL NOT WORK

Whosebug 上还有另一个答案here that suggests using DNSMASQ to achieve what you are trying to do. Otherwise you may want to consider setting up a DNS server. (See BIND or PowerDNS)。根据您拥有的网络访问权限,您的路由器也可以提供帮助。