下面按从零开始的方式,给你一个Ubuntu 上配置 Apache2 的完整流程(适用于 Ubuntu 20.04 / 22.04 / 24.04)。
sudo apt update
sudo apt install apache2 -y
安装完成后,Apache 会自动启动。
sudo systemctl status apache2
看到 active (running) 说明运行正常。
常用命令:
sudo systemctl start apache2 # 启动
sudo systemctl stop apache2 # 停止
sudo systemctl restart apache2 # 重启
sudo systemctl reload apache2 # 平滑重载配置
sudo ufw allow 'Apache Full'
或只放行 HTTP / HTTPS:
sudo ufw allow 80
sudo ufw allow 443
浏览器访问:
http://服务器IP
看到 Apache2 Ubuntu Default Page 即成功。
| 作用 | 路径 |
|---|---|
| 默认网站根目录 | /var/www/html |
| 站点配置 | /etc/apache2/sites-available/ |
| 启用站点 | /etc/apache2/sites-enabled/ |
| 模块配置 | /etc/apache2/mods-available/ |
| 主配置文件 | /etc/apache2/apache2.conf |
sudo mkdir -p /var/www/example.com
sudo chown -R $USER:$USER /var/www/example.com
echo "<h1>Hello Apache2</h1>" > /var/www/example.com/index.html
sudo nano /etc/apache2/sites-available/example.com.conf
内容示例:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com
<Directory /var/www/example.com>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
sudo a2ensite example.com.conf
sudo systemctl reload apache2
(禁用站点用 a2dissite)
sudo a2enmod rewrite
sudo systemctl restart apache2
sudo a2enmod ssl
sudo systemctl restart apache2
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d example.com -d www.example.com
会自动:
sudo chmod -R 755 /var/www/example.com
sudo systemctl reload apache2
sudo netstat -tlnp | grep :80
✅ 配置 PHP ✅ 配置 多站点 ✅ 配置 反向代理 ✅ 配置 Apache + Tomcat / Node ✅ 配置 访问控制 / 认证
你可以直接告诉我:
你的具体需求(比如 PHP 网站 / HTTPS / 多域名)
我可以给你更精准的配置方案 ✅