温馨提示×

ubuntu如何配置apache2

小樊
41
2026-07-05 23:14:08
栏目: 智能运维

在 Ubuntu 上配置 Apache2 通常包括安装、基本配置、虚拟主机、HTTPS 等步骤。下面按常见使用场景给你一个完整且实用的配置指南


一、安装 Apache2

sudo apt update
sudo apt install apache2 -y

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

检查状态:

sudo systemctl status apache2

常用命令:

sudo systemctl start apache2
sudo systemctl stop apache2
sudo systemctl restart apache2
sudo systemctl enable apache2

二、防火墙配置(UFW)

如果启用了防火墙,需要放行 HTTP / HTTPS:

sudo ufw allow 'Apache Full'

查看状态:

sudo ufw status

三、测试 Apache 是否正常工作

浏览器访问:

http://服务器IP

看到 Apache2 Ubuntu Default Page 即成功。


四、Apache 目录结构说明

路径 说明
/var/www/html 默认网站根目录
/etc/apache2/apache2.conf 主配置文件
/etc/apache2/sites-available/ 虚拟主机配置
/etc/apache2/sites-enabled/ 已启用的站点
/etc/apache2/mods-available/ 可用模块
/etc/apache2/mods-enabled/ 已启用模块
/var/log/apache2/ 日志目录

五、配置虚拟主机(推荐)

example.com 为例。

1️⃣ 创建网站目录

sudo mkdir -p /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example.com
sudo chmod -R 755 /var/www

2️⃣ 创建测试页面

echo "<h1>example.com works</h1>" > /var/www/example.com/public_html/index.html

3️⃣ 创建虚拟主机配置文件

sudo nano /etc/apache2/sites-available/example.com.conf

内容示例:

<VirtualHost *:80>
    ServerAdmin webmaster@example.com
    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>

4️⃣ 启用站点

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

六、启用 rewrite 等常用模块

sudo a2enmod rewrite
sudo systemctl restart apache2

常用模块:

  • rewrite → URL 重写
  • ssl → HTTPS
  • headers → HTTP 头

七、配置 HTTPS(Let’s Encrypt)

1️⃣ 安装 Certbot

sudo apt install certbot python3-certbot-apache -y

2️⃣ 申请证书

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

3️⃣ 自动续期测试

sudo certbot renew --dry-run

八、常见配置示例

✅ 禁止目录浏览

Options -Indexes

✅ 设置默认首页

DirectoryIndex index.html index.php

✅ 配置 PHP(如已安装)

sudo apt install php libapache2-mod-php
sudo systemctl restart apache2

九、排错建议

  • 查看错误日志:
tail -f /var/log/apache2/error.log
  • 检查配置文件语法:
apache2ctl configtest

如果你有具体需求(如:部署 PHP / Laravel / WordPress / 反向代理 / 多站点),可以告诉我,我可以给你针对性配置方案

0