温馨提示×

Ubuntu下Apache2安装步骤

小樊
44
2025-11-15 09:31:29
栏目: 智能运维

Ubuntu 下 Apache2 安装与基础配置

一 安装与启动

  • 更新软件包索引并安装 Apache2:
    • 命令:sudo apt update && sudo apt install apache2 -y
  • 启动服务并设置开机自启:
    • 命令:sudo systemctl start apache2sudo systemctl enable apache2
  • 验证运行状态:
    • 命令:sudo systemctl status apache2(应看到 active (running)
    • 命令:sudo apache2ctl configtest(语法检查,返回 Syntax OK 表示配置无语法错误)
  • 可选 使用 Snap 安装(与 APT 二选一):
    • 命令:sudo snap install apache2 --classic,随后用 sudo snap services apache2 查看服务状态

二 防火墙放行

  • 使用 UFW 放行 HTTP/HTTPS:
    • 命令:sudo ufw allow 'Apache Full'(同时开放 80/443
    • 如仅放行 HTTP:sudo ufw allow 80/tcp
  • 验证规则:sudo ufw status 应显示对应规则为 ALLOW

三 访问测试与目录结构

  • 访问默认页面:
    • 在浏览器打开 http://服务器IPhttp://localhost,看到 Apache 欢迎页即表示安装成功
  • 常用目录与文件:
    • 主配置:/etc/apache2/apache2.conf
    • 端口与监听:/etc/apache2/ports.conf
    • 站点配置:可用站点在 /etc/apache2/sites-available/,启用后在 /etc/apache2/sites-enabled/
    • 日志文件:/var/log/apache2/error.log/var/log/apache2/access.log

四 虚拟主机配置示例

  • 创建站点目录与示例页面:
    • 命令:sudo mkdir -p /var/www/yourdomain.com/html
    • 命令:sudo nano /var/www/yourdomain.com/html/index.html(写入简单 HTML)
  • 新建站点配置:
    • 命令:sudo nano /etc/apache2/sites-available/yourdomain.com.conf
    • 示例配置:
      <VirtualHost *:80>
          ServerAdmin webmaster@yourdomain.com
          ServerName yourdomain.com
          ServerAlias www.yourdomain.com
          DocumentRoot /var/www/yourdomain.com/html
      
          <Directory /var/www/yourdomain.com/html>
              Options Indexes FollowSymLinks
              AllowOverride All
              Require all granted
          </Directory>
      
          ErrorLog ${APACHE_LOG_DIR}/error.log
          CustomLog ${APACHE_LOG_DIR}/access.log combined
      </VirtualHost>
      
  • 启用站点并重新加载:
    • 命令:sudo a2ensite yourdomain.com.conf
    • 可选:sudo a2dissite 000-default.conf(禁用默认站点)
    • 命令:sudo systemctl reload apache2
  • 测试:访问 http://yourdomain.com 应显示示例页面

五 启用 HTTPS 与常见问题排查

  • 使用 Certbot 申请并自动配置 Let’s Encrypt 证书:
    • 安装:sudo apt install certbot python3-certbot-apache
    • 获取并安装证书:sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
    • 测试自动续期:sudo certbot renew --dry-run
  • 常见问题快速排查:
    • 端口被占用:检查 sudo ss -tulpen | grep ':80\|:443',必要时调整 ports.conf 或释放占用进程
    • 配置语法错误:sudo apache2ctl configtest
    • 查看错误日志:sudo tail -f /var/log/apache2/error.log
    • 权限问题:确保站点目录对 www-data 可读(如:sudo chown -R www-data:www-data /var/www/yourdomain.com 并合理设置权限)
  • 安全提示:
    • 生产环境请使用 HTTPS,并定期更新证书与系统软件包

0