温馨提示×

centos apache2怎么部署

小樊
44
2026-09-24 05:55:13
栏目: 智能运维

在 CentOS 上部署 Web 服务,Apache 在 CentOS 中叫 httpd,不是 apache2(apache2 是 Ubuntu/Debian 的叫法)。下面是从零开始的标准部署流程。


一、安装 Apache(httpd)

1. 更新系统

sudo yum update -y

2. 安装 Apache

sudo yum install httpd -y

二、启动并设置开机自启

sudo systemctl start httpd
sudo systemctl enable httpd

查看状态:

sudo systemctl status httpd

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

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

如果是云服务器,还要在 安全组 放行 80、443。


四、测试是否成功

浏览器访问:

http://服务器IP

看到 Apache Test Page 即成功。


五、部署自己的网站

默认网站目录

/var/www/html

把你的网页放进去,例如:

sudo cp index.html /var/www/html/

或修改文件:

sudo vi /var/www/html/index.html

六、虚拟主机(多站点,可选)

示例:配置一个域名站点

sudo mkdir -p /var/www/example.com/public_html
sudo chown -R apache:apache /var/www/example.com

创建配置文件:

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

内容示例:

<VirtualHost *:80>
    ServerName 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>

重启 Apache:

sudo systemctl restart httpd

七、开启 HTTPS(可选,推荐)

安装 mod_ssl

sudo yum install mod_ssl -y

证书可用:

  • 自签名(测试)
  • Let’s Encrypt(生产)

Let’s Encrypt 示例:

sudo yum install certbot python3-certbot-apache -y
sudo certbot --apache

八、常见问题

1. 页面打不开

  • 防火墙
  • 安全组
  • SELinux(可临时关闭测试)
sudo setenforce 0

2. 403 Forbidden

  • 目录权限
  • SELinux 上下文
sudo chcon -R -t httpd_sys_content_t /var/www

如果你说的是 CentOS + Apache + PHP / Python / Java 或 Docker 部署,可以告诉我具体需求,我可以给你更针对性的方案。

0 踩