温馨提示×

centos怎么弄apache配置

小樊
41
2026-09-08 23:52:38
栏目: 智能运维

在 CentOS 上配置 Apache(通常叫 httpd)一般分为:安装 → 启动 → 配置虚拟主机/目录 → 防火墙 → 测试。下面按常见场景给你一套实用流程。


一、安装 Apache

CentOS 7

yum install httpd -y

CentOS 8 / Stream

dnf install httpd -y

二、启动并设置开机自启

systemctl start httpd
systemctl enable httpd

查看状态:

systemctl status httpd

三、防火墙放行 80/443 端口

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

(如果是云服务器,还要在控制台安全组放行 80/443)


四、默认网站目录

CentOS 下 Apache 默认根目录是:

/var/www/html

放一个测试页:

echo "Hello Apache" > /var/www/html/index.html

浏览器访问服务器 IP 即可。


五、Apache 配置文件位置

主配置文件:

/etc/httpd/conf/httpd.conf

额外配置目录(推荐放虚拟主机):

/etc/httpd/conf.d/

日志位置:

/var/log/httpd/

六、配置虚拟主机(多网站)

例如配置 www.example.com

1. 创建网站目录

mkdir -p /var/www/example
echo "example site" > /var/www/example/index.html

2. 创建配置文件

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

内容示例:

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

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

    ErrorLog /var/log/httpd/example-error.log
    CustomLog /var/log/httpd/example-access.log combined
</VirtualHost>

3. 检查并重载

httpd -t
systemctl reload httpd

七、开启 URL 重写(如 WordPress)

确保:

AllowOverride All

并加载模块(默认一般已加载):

httpd -M | grep rewrite

八、配置 HTTPS(可选)

1. 安装 mod_ssl

yum install mod_ssl -y

2. 放证书后配置

vi /etc/httpd/conf.d/ssl.conf

或用 Let’s Encrypt:

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

九、常见排错

  • 403 Forbidden
    → 目录权限或 Require all granted 没配
  • 无法访问
    → 防火墙 / 安全组 / httpd 未启动
  • 配置不生效
    httpd -t 检查语法,再 reload

如果你愿意,可以告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • 单网站还是多网站
  • 是否要 HTTPS / 反向代理 / PHP

我可以直接给你一份可直接用的配置

0