Ubuntu系统安装Apache服务教程
🚀 第一步:安装与启动 Apache
- 更新软件包列表
首先,刷新本地的软件包索引,确保能获取到最新的版本信息。sudo apt update

-
安装 Apache
执行安装命令。-y参数表示自动确认,省去手动输入"Y"的步骤。sudo apt install apache2 -y安装完成后,Apache 服务通常会自动启动。

-
管理 Apache 服务
你可以使用systemctl命令来管理 Apache 的运行状态:- 查看状态:
sudo systemctl status apache2,看到active (running)字样即为正常。 - 启动/停止/重启:
sudo systemctl start/stop/restart apache2。 - 设置开机自启:
sudo systemctl enable apache2。 - 平滑重载配置:在不中断服务的情况下重新加载配置文件,
sudo systemctl reload apache2。
- 查看状态:
🔥 第二步:配置防火墙 (UFW)
如果你的 Ubuntu 启用了 UFW 防火墙,需要放行 HTTP (80) 和 HTTPS (443) 端口,否则外部无法访问网站。
最简便的方法是使用 Apache 预置的应用配置文件:
sudo ufw allow 'Apache Full'
这条命令会同时放行 80 和 443 端口。执行后,可以用 sudo ufw status 查看规则是否生效。
✅ 第三步:验证安装
打开浏览器,访问你的服务器 IP 地址:
http://你的服务器IP
如果看到 “Apache2 Ubuntu Default Page” 的欢迎页面,就说明 Apache 已经成功安装并运行了。
📂 第四步:了解核心目录
熟悉 Apache 在 Ubuntu 下的文件结构,对后续配置很有帮助:
| 路径 | 作用 |
|---|---|
/var/www/html | 默认网站根目录,你的网站文件(如 HTML、PHP)就放在这里 |
/etc/apache2/apache2.conf | 主配置文件,包含全局设置 |
/etc/apache2/sites-available/ | 可用站点配置目录,存放虚拟主机的配置文件 |
/etc/apache2/sites-enabled/ | 已启用站点目录,存放指向 sites-available 中配置文件的软链接 |
/etc/apache2/mods-available/ | 可用模块目录 |
/etc/apache2/mods-enabled/ | 已启用模块目录 |
/var/log/apache2/ | 日志目录,包含 access.log (访问日志) 和 error.log (错误日志) |
🌐 第五步:配置虚拟主机 (多站点)
虚拟主机允许你在同一台服务器上托管多个网站。以下是一个配置示例,假设域名为 example.com。
-
创建网站目录和测试页面
sudo mkdir -p /var/www/example.com/public_html sudo chown -R $USER:$USER /var/www/example.com echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/public_html/index.html -
创建虚拟主机配置文件
使用nano或vim创建配置文件: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> -
启用新站点并重载 Apache
sudo a2ensite example.com.conf sudo systemctl reload apache2如果需要禁用默认站点,可以执行
sudo a2dissite 000-default.conf。
🔒 第六步:启用 HTTPS (可选但推荐)
使用 Let’s Encrypt 的免费证书来启用 HTTPS 是最佳实践。
- 安装 Certbot 及其 Apache 插件
sudo apt install certbot python3-certbot-apache -y - 自动获取并安装证书
将example.com替换为你的域名:
Certbot 会自动修改 Apache 配置,申请证书,并设置 HTTP 到 HTTPS 的自动跳转。sudo certbot --apache -d example.com -d www.example.com
🛠️ 常用命令与排错速查
- 检查配置语法:修改配置后,先用此命令检查有无语法错误,再重启服务。
sudo apache2ctl configtest - 403 Forbidden 错误:通常是文件权限问题,确保
www-data用户对网站目录有读取权限。sudo chown -R www-data:www-data /var/www/你的网站目录 - 端口被占用:如果启动失败,检查 80 端口是否被其他程序(如 Nginx)占用。
sudo netstat -tlnp | grep :80
转载自 CSDN-专业IT技术社区
原文链接:https://blog.csdn.net/qq_59334230/article/details/169067440




