温馨提示×

如何备debian apache2配置

小樊
47
2026-10-21 00:26:02
栏目: 智能运维

下面给你一份Debian 上 Apache2 配置从零到可用的实用指南,适合新手和日常运维。


一、安装 Apache2

sudo apt update
sudo apt install apache2 -y

安装完成后,Apache 会自动启动。

查看状态:

systemctl status apache2

二、目录结构(重要)

Debian 下 Apache2 的配置文件结构很清晰:

/etc/apache2/
├── apache2.conf        # 主配置文件
├── ports.conf          # 端口配置
├── sites-available/    # 可用站点(虚拟主机)
├── sites-enabled/      # 已启用站点(软链接)
├── mods-available/     # 可用模块
├── mods-enabled/       # 已启用模块
├── conf-available/     # 额外配置
└── conf-enabled/

⚠️ 只改 available,用 a2ensite / a2enmod 启用


三、基本站点配置(虚拟主机)

1. 创建站点目录

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

2. 创建虚拟主机文件

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>

四、启用站点与模块

启用站点

sudo a2ensite example.com.conf
sudo a2dissite 000-default.conf   # 可选:禁用默认站点

常用模块

sudo a2enmod rewrite
sudo a2enmod ssl

重新加载配置

sudo systemctl reload apache2

五、防火墙(如有)

sudo ufw allow 80
sudo ufw allow 443

六、HTTPS(Let’s Encrypt 示例)

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d example.com -d www.example.com

自动配置 SSL 并启用 443。


七、常用排错命令

# 检查配置语法
apache2ctl configtest

# 查看错误日志
tail -f /var/log/apache2/error.log

# 查看启用模块
apache2ctl -M

八、常见需求速查

需求 操作
开启 rewrite a2enmod rewrite
多站点 多个 sites-available/*.conf
自定义端口 改 ports.conf
PHP 支持 apt install php libapache2-mod-php

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

  • 是 本地测试 / 服务器生产
  • 是否用 PHP / Python / 反向代理
  • 是否要 多域名 / 子目录

我可以给你一份完全贴合你场景的 Apache2 配置模板。

0 踩