在 CentOS 上搭建 LAMP(Linux + Apache + MySQL/MariaDB + PHP) 并配置 SSL(HTTPS),常见做法有两种:
下面分别说明。
yum install epel-release -y
yum install certbot python2-certbot-apache -y
CentOS 8 可用
dnf替代yum
certbot --apache -d example.com -d www.example.com
按提示操作:
certbot renew --dry-run
系统已默认配置定时任务(cron / systemd timer)
openssl req -x509 -nodes -days 365 \
-newkey rsa:2048 \
-keyout /etc/pki/tls/private/server.key \
-out /etc/pki/tls/certs/server.crt
按提示填写信息(Common Name 填域名或 IP)
编辑或新建:
vi /etc/httpd/conf.d/ssl.conf
示例:
<VirtualHost *:443>
ServerName example.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/server.crt
SSLCertificateKeyFile /etc/pki/tls/private/server.key
</VirtualHost>
systemctl restart httpd
确保 443 端口开放:
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
在 Apache 配置中添加:
<VirtualHost *:80>
ServerName example.com
Redirect permanent / https://example.com/
</VirtualHost>
yum install mod_ssl
setsebool -P httpd_can_network_connect 1
如果你能提供:
我可以给你更精确的一步到位配置。