下面给你一份Debian 上 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 启用
sudo mkdir -p /var/www/example.com/public_html
sudo chown -R www-data:www-data /var/www/example.com
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
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 |
如果你愿意,可以告诉我:
我可以给你一份完全贴合你场景的 Apache2 配置模板。