温馨提示×

ubuntu apache配置是什么

小樊
44
2026-09-29 07:07:34
栏目: 智能运维

在 Ubuntu 上,Apache 的配置主要涉及安装、目录结构、虚拟主机、常用命令等。下面给你一个清晰、实用的总览。


一、安装 Apache(Ubuntu)

sudo apt update
sudo apt install apache2

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

查看状态:

sudo systemctl status apache2

二、Apache 配置目录结构(重点)

Ubuntu 中 Apache 的配置文件主要在:

/etc/apache2/

重要目录和文件:

路径 作用
/etc/apache2/apache2.conf 主配置文件
/etc/apache2/ports.conf 监听端口(80 / 443)
/etc/apache2/sites-available/ 虚拟主机配置(可用)
/etc/apache2/sites-enabled/ 启用中的虚拟主机(软链接)
/etc/apache2/mods-available/ 可用模块
/etc/apache2/mods-enabled/ 已启用模块
/var/www/html/ 默认网站根目录

三、常用管理命令

sudo systemctl start apache2     # 启动
sudo systemctl stop apache2      # 停止
sudo systemctl restart apache2   # 重启
sudo systemctl reload apache2    # 平滑重载配置

sudo apache2ctl configtest       # 检查配置语法

四、配置虚拟主机(Very Common)

1️⃣ 创建网站目录

sudo mkdir -p /var/www/example.com/public_html
sudo chown -R $USER:$USER /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}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

3️⃣ 启用站点

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

4️⃣ 重启 Apache

sudo systemctl reload apache2

五、开启 rewrite(伪静态常用)

sudo a2enmod rewrite
sudo systemctl restart apache2

确保虚拟主机中:

AllowOverride All

六、配置 HTTPS(SSL)

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

自动配置 80 → 443 跳转。


七、防火墙(如果开了 UFW)

sudo ufw allow 'Apache Full'

八、常见排错

  • 403 Forbidden
    → 检查目录权限、Require all granted
  • 站点不生效
    → 是否 a2ensite 并 reload
  • 配置报错
    → sudo apache2ctl configtest

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

  • Ubuntu 版本(20.04 / 22.04 / 24.04)
  • 用途(PHP / Laravel / 静态网站 / 反向代理)

我可以直接给你定制配置。

0 踩