下面以 Apache2(最常见于 Ubuntu/Debian) 为例,说明如何配置 虚拟主机(VirtualHost)。如果你用的是 CentOS/RHEL,路径会略有不同。
虚拟主机可以让 一台服务器同时托管多个网站,例如:
www.a.comwww.b.com每个站点使用不同的目录、端口或域名。
sudo apt update
sudo apt install apache2
sudo systemctl status apache2
sudo mkdir -p /var/www/example.com/public_html
sudo mkdir -p /var/www/test.com/public_html
设置权限:
sudo chown -R $USER:$USER /var/www/example.com
sudo chown -R $USER:$USER /var/www/test.com
echo "<h1>example.com</h1>" > /var/www/example.com/public_html/index.html
echo "<h1>test.com</h1>" > /var/www/test.com/public_html/index.html
sudo nano /etc/apache2/sites-available/example.com.conf
内容:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
<Directory /var/www/example.com/public_html>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>
同理创建 test.com.conf。
sudo a2ensite example.com.conf
sudo a2ensite test.com.conf
禁用默认站点(可选):
sudo a2dissite 000-default.conf
sudo apache2ctl configtest
sudo systemctl reload apache2
修改本地 hosts 文件:
Linux / macOS
sudo nano /etc/hosts
Windows
C:\Windows\System32\drivers\etc\hosts
添加:
127.0.0.1 example.com
127.0.0.1 test.com
浏览器访问:
http://example.com
http://test.com
Listen 8080
<VirtualHost *:8080>
DocumentRoot /var/www/port8080
</VirtualHost>
<Directory> 未配置 Require all granteda2ensite/etc/httpd/conf.d/httpda2ensite,直接创建 .conf如果你愿意,我可以帮你:
你可以直接贴你的 系统版本 + 报错信息。