温馨提示×

centos apache如何设虚拟主机

小樊
43
2026-10-05 21:40:25
栏目: 云计算

在 CentOS 上配置 Apache 虚拟主机(Virtual Host),通常按以下步骤操作(以 CentOS 7/8 + Apache(httpd) 为例,适用于 基于域名的虚拟主机)。


一、安装 Apache(如未安装)

# CentOS 7
yum install httpd -y

# CentOS 8
dnf install httpd -y

# 启动并设置开机自启
systemctl start httpd
systemctl enable httpd

二、创建网站目录

mkdir -p /var/www/example.com/public_html
mkdir -p /var/www/test.com/public_html

chown -R apache:apache /var/www
chmod -R 755 /var/www

示例首页:

echo "Welcome to example.com" > /var/www/example.com/public_html/index.html
echo "Welcome to test.com" > /var/www/test.com/public_html/index.html

三、创建虚拟主机配置文件

Apache 虚拟主机配置一般放在:

/etc/httpd/conf.d/

1️⃣ example.com 虚拟主机

vi /etc/httpd/conf.d/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 /var/log/httpd/example.com-error.log
    CustomLog /var/log/httpd/example.com-access.log combined
</VirtualHost>

2️⃣ test.com 虚拟主机

vi /etc/httpd/conf.d/test.com.conf

内容同上,替换域名和路径即可。


四、检查配置并重启 Apache

httpd -t
systemctl restart httpd

五、本地测试(无 DNS 时)

修改本地 hosts 文件(Windows / Linux / macOS):

192.168.1.100 example.com
192.168.1.100 test.com

浏览器访问:

http://example.com
http://test.com

六、常见补充

✅ 开启 rewrite(伪静态)

<Directory /var/www/example.com/public_html>
    AllowOverride All
</Directory>

✅ 防火墙放行 80 端口

firewall-cmd --permanent --add-service=http
firewall-cmd --reload

✅ HTTPS(可选)

使用 Let’s Encrypt:

yum install certbot python2-certbot-apache -y
certbot --apache

如果你需要:

  • 基于端口的虚拟主机
  • CentOS 9 / Rocky / Alma
  • Apache + PHP / WordPress
  • HTTPS 详细配置

可以告诉我你的具体场景。

0 踩