下面给你一个**在 Ubuntu 上给 Apache2 配置 SSL(HTTPS)**的完整常见做法,适用于 Ubuntu 20.04 / 22.04。
example.com)sudo apt update
sudo apt install apache2
启用 SSL 模块:
sudo a2enmod ssl
sudo systemctl restart apache2
sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d example.com -d www.example.com
按提示操作:
✅ Certbot 会:
假设你已有:
/etc/ssl/certs/example.com.crt
/etc/ssl/private/example.com.key
sudo nano /etc/apache2/sites-available/example-ssl.conf
内容示例:
<VirtualHost *:443>
ServerName example.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/ssl/certs/example.com.crt
SSLCertificateKeyFile /etc/ssl/private/example.com.key
<Directory /var/www/html>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
sudo a2ensite example-ssl.conf
sudo systemctl reload apache2
编辑 80 端口站点:
sudo nano /etc/apache2/sites-available/000-default.conf
添加:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>
重启 Apache:
sudo systemctl reload apache2
sudo ufw allow 443/tcp
sudo ufw reload
测试自动续期:
sudo certbot renew --dry-run
✅ 系统已自带定时任务,一般无需手动操作。
sudo apache2ctl configtest
sudo apt install apache2 certbot python3-certbot-apache
sudo certbot --apache
如果你愿意,可以告诉我:
我可以给你完全定制化的配置。