温馨提示×

怎样配置debian apache2

小樊
42
2026-09-15 15:38:24
栏目: 智能运维

下面给你一份在 Debian 上配置 Apache2 的实用指南,从安装到常见配置,适合新手到日常使用。


一、安装 Apache2

sudo apt update
sudo apt install apache2

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

查看状态:

systemctl status apache2

设置开机自启(一般默认已开启):

sudo systemctl enable apache2

二、基本目录结构

Debian 下 Apache2 的重要路径:

  • 网站根目录:/var/www/html
  • 主配置文件:/etc/apache2/apache2.conf
  • 虚拟主机配置目录:/etc/apache2/sites-available/
  • 已启用站点目录:/etc/apache2/sites-enabled/
  • 模块目录:/etc/apache2/mods-available/
  • 端口配置:/etc/apache2/ports.conf

三、测试默认页面

浏览器访问:

http://服务器IP

看到 Apache2 Debian Default Page 说明成功。


四、配置虚拟主机(推荐方式)

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>

3. 启用站点

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

4. 重启 Apache

sudo systemctl reload apache2

五、启用常用模块

sudo a2enmod rewrite
sudo a2enmod ssl
sudo systemctl restart apache2

六、配置 HTTPS(Let’s Encrypt)

1. 安装 Certbot

sudo apt install certbot python3-certbot-apache

2. 申请证书

sudo certbot --apache -d example.com -d www.example.com

Certbot 会自动修改 Apache 配置并启用 443。


七、防火墙(如有)

sudo ufw allow 80
sudo ufw allow 443

八、常见问题

1. 403 Forbidden

  • 检查目录权限
  • 确认 Require all granted
  • 目录属主为 www-data

2. .htaccess 不生效

sudo a2enmod rewrite

并确认 AllowOverride All

3. 修改配置后不生效

sudo apache2ctl configtest
sudo systemctl reload apache2

九、最小可用示例(快速测试)

echo "Hello Apache" | sudo tee /var/www/html/index.html

访问 http://IP 即可。


如果你有具体需求(如 PHP、反向代理、多域名、内网部署),可以告诉我,我可以给你更针对性的配置。

0 踩