温馨提示×

CentOS Apache如何设置域名

小樊
33
2026-08-18 21:22:53
栏目: 云计算

CentOS 上通过 Apache 设置域名,一般分为以下几个步骤:
(以 CentOS 7/8 + Apache(httpd) 为例,假设你的域名是 example.com


一、前提条件

  1. CentOS 已安装 Apache

    yum install httpd -y        # CentOS 7
    dnf install httpd -y        # CentOS 8
    
  2. 域名已解析到服务器公网 IP

    • 在域名服务商处添加 A 记录:
      example.com  →  服务器IP
      www.example.com → 服务器IP
      
  3. 服务器防火墙放行 80 / 443 端口

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

二、创建网站目录

mkdir -p /var/www/example.com

创建测试页面:

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

三、创建 Apache 虚拟主机(推荐方式)

1️⃣ 新建虚拟主机配置文件

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

2️⃣ 写入以下内容

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com

    <Directory /var/www/example.com>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog /var/log/httpd/example.com_error.log
    CustomLog /var/log/httpd/example.com_access.log combined
</VirtualHost>

四、检查并启动 Apache

检查配置

httpd -t

✅ 显示 Syntax OK 表示配置正确

启动 / 重启 Apache

systemctl restart httpd
systemctl enable httpd

五、测试域名是否生效

浏览器访问:

http://example.com

✅ 如果看到页面内容,说明域名已成功绑定 Apache


六、常见问题排查

1️⃣ 访问显示默认 CentOS 欢迎页

  • 检查是否有 welcome.conf 冲突:
rm -f /etc/httpd/conf.d/welcome.conf
systemctl restart httpd

2️⃣ 域名无法访问

  • 检查 DNS 是否生效:
ping example.com
  • 检查防火墙 / 云服务器安全组是否放行 80 端口

七、进阶(可选)

✅ 开启 HTTPS(Let’s Encrypt)

yum install certbot python3-certbot-apache -y
certbot --apache -d example.com -d www.example.com

✅ 伪静态(SEO)

确保 Apache 支持:

httpd -M | grep rewrite

并开启:

AllowOverride All

如果你能提供:

  • ✅ CentOS 具体版本
  • ✅ Apache 是否已安装
  • ✅ 是否使用宝塔 / 面板

我可以给你更精确的配置方式。

0