我正在尝试在本地 Web 服务器上配置虚拟主机。我想要的是,当我转到本地主机或服务器 IP 时,我希望看到默认的 centos 页面,当我转到在 /etc/hosts 中配置的其他网站时,我希望看到那些网站。
这是此设置的正确配置吗?它没有按我想要的方式工作……因为现在所有网站都转到默认的 centos 页面,这不是我想要的。
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/
ServerName localhost
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web1.com/html/
ServerName web1.com
ErrorLog /var/www/vhost/web1.com/logs/error.log
CustomLog /var/www/vhost/web1.com/logs/access.log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web2.com/html/
ServerName web2.com
ErrorLog /var/www/vhost/web2.com/logs/error.log
CustomLog /var/www/vhost/web2.com/logs/access.log common
</VirtualHost>
答案1
将其添加到您的虚拟主机的 ServerName web1.com 下方:
ServerAlias *.web1.com
这是对您问题中的评论的回答,您应该编辑该问题以将该问题放入其中。
答案2
如果您在 Ubuntu 服务器中配置 Apache,请转到文件/etc/apache2/sites-available/000-default.conf
并添加以下行:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web1.com/html/
ServerName web1.com
ErrorLog /var/www/vhost/web1.com/logs/error.log
CustomLog /var/www/vhost/web1.com/logs/access.log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/vhost/web2.com/html/
ServerName web2.com
ErrorLog /var/www/vhost/web2.com/logs/error.log
CustomLog /var/www/vhost/web2.com/logs/access.log common
</VirtualHost>
并在主机文件()中添加以下几行/etc/hosts
:
127.0.1.1 web1.com
127.0.1.2 web2.com