在 Ubuntu 上,Apache 的配置主要涉及安装、目录结构、虚拟主机、常用命令等。下面给你一个清晰、实用的总览。
sudo apt update
sudo apt install apache2
安装完成后,Apache 会自动启动。
查看状态:
sudo systemctl status apache2
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 # 检查配置语法
sudo mkdir -p /var/www/example.com/public_html
sudo chown -R $USER:$USER /var/www/example.com
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>
sudo a2ensite example.com.conf
sudo a2dissite 000-default.conf # 禁用默认站点(可选)
sudo systemctl reload apache2
sudo a2enmod rewrite
sudo systemctl restart apache2
确保虚拟主机中:
AllowOverride All
sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d example.com -d www.example.com
自动配置 80 → 443 跳转。
sudo ufw allow 'Apache Full'
Require all granteda2ensite 并 reloadsudo apache2ctl configtest如果你愿意,可以告诉我:
我可以直接给你定制配置。