下面是在 Ubuntu + Apache2 上配置 SSL(HTTPS) 的常见做法,分两种场景:使用 Let’s Encrypt 免费证书(推荐)和使用自有证书。
sudo apt update
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache
按提示输入:
example.com)certbot 会自动:
sudo certbot renew --dry-run
✅ 完成,访问 https://你的域名
sudo a2enmod ssl
sudo systemctl restart apache2
假设:
/etc/ssl/certs/example.com.crt/etc/ssl/private/example.com.keysudo nano /etc/apache2/sites-available/example.com.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
</Directory>
</VirtualHost>
sudo a2ensite example.com.conf
sudo systemctl reload apache2
在 *:80 的虚拟主机中加:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>
或:
sudo a2enmod rewrite
sudo ufw allow 443/tcp
sudo systemctl status apache2
sudo journalctl -u apache2
https://www.ssllabs.com/ssltest/
如果你愿意,可以告诉我:
我可以给你精确配置示例。