我有一个虚拟主机,但是当我创建第二个虚拟主机并检查 ping 时,它会转到第一个网站,而当在浏览器中检查时,它显示 404 未找到,但第一个工作正常。
答案1
1 在 /etc/hosts
。
这意味着您正在apache2
同一台计算机上运行,并尝试通过浏览器访问它。否则,请设置正确的 IP 地址。
127.0.0.1 example.com
127.0.0.1 example1.com
2 调整你的 apache 虚拟主机配置
/etc/apache2/sites-available/example.com.conf
<VirtualHost 127.0.0.1:80>
ServerAdmin [email protected]
ServerName example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog /var/www/example.com/logs/error.log
CustomLog /var/www/example.com/logs/access.log combined
<Directory /var/www/example.com/public_html/ >
Require all granted
AllowOverride All
Options Indexes
</Directory>
</VirtualHost>
/etc/apache2/sites-available/example1.com.conf
<VirtualHost 127.0.0.1:80>
ServerAdmin [email protected]
ServerName example1.com
DocumentRoot /var/www/example1.com/public_html
ErrorLog /var/www/example1.com/logs/error.log
CustomLog /var/www/example1.com/logs/access.log combined
<Directory /var/www/example1.com/public_html/ >
Require all granted
AllowOverride All
Options Indexes
</Directory>
</VirtualHost>
3 创建所需目录
sudo mkdir -p /var/www/example.com/{public_html,logs}
sudo mkdir -p /var/www/example1.com/{public_html,logs}
4 启用虚拟主机
sudo a2ensite example.com
sudo a2ensite example1.com
5 重新启动 apache2 以应用更改
sudo service apache2 restart
或者
sudo /etc/init.d/apache2 restart
6 检查是否正常工作
为两台主机创建不同的索引文件
echo "example.com" | sudo tee /var/www/example.com/public_html/index.html
echo "example1.com" | sudo tee /var/www/example1.com/public_html/index.html
打开浏览器并导航至example.com
。您应该会看到“example.com”
导航到example1.com
。您应该会看到“example1.com”。