下面按**最常见的 Ubuntu + Apache(即 Apache2)**场景,给你一份从安装到基础配置、虚拟主机、HTTPS 的实用指南。
sudo apt update
sudo apt install apache2
安装完成后,Apache 会自动启动。
查看状态:
systemctl status apache2
开机自启(一般默认已开启):
sudo systemctl enable apache2
浏览器访问服务器 IP,看到 Apache2 Ubuntu Default Page 即成功。
| 作用 | 路径 |
|---|---|
| 主配置文件 | /etc/apache2/apache2.conf |
| 端口配置 | /etc/apache2/ports.conf |
| 站点配置目录 | /etc/apache2/sites-available/ |
| 启用站点目录 | /etc/apache2/sites-enabled/ |
| 模块目录 | /etc/apache2/mods-available/ |
| 网页根目录 | /var/www/html |
编辑默认站点:
sudo nano /etc/apache2/sites-available/000-default.conf
修改:
DocumentRoot /var/www/myweb
创建目录:
sudo mkdir -p /var/www/myweb
sudo chown -R www-data:www-data /var/www/myweb
示例:配置 example.com
sudo nano /etc/apache2/sites-available/example.conf
内容:
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/example
<Directory /var/www/example>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/example_error.log
CustomLog ${APACHE_LOG_DIR}/example_access.log combined
</VirtualHost>
启用站点:
sudo a2ensite example.conf
sudo systemctl reload apache2
sudo a2enmod rewrite
sudo a2enmod ssl
sudo systemctl restart apache2
sudo ufw allow 80
sudo ufw allow 443
sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d example.com
自动配置 SSL 并续期。
测试续期:
sudo certbot renew --dry-run
Require all granted 未配置a2ensitereload apache2sudo netstat -tulnp | grep :80
sudo systemctl start apache2
sudo systemctl stop apache2
sudo systemctl restart apache2
sudo systemctl reload apache2
如果你有具体需求(如 PHP、WordPress、反向代理、多域名、内网部署等),可以告诉我,我可以给你更针对性的配置示例。