在安装SSL证书前,需确认以下信息:
wget http://soft.vpser.net/lnmp/lnmp1.7.tar.gz → tar zxf lnmp1.7.tar.gz → cd lnmp1.7 → ./install.sh,按提示选择版本配置)。通过LNMP一键安装包的工具快速申请:
在终端执行命令:lnmp ssl add,按提示依次输入:
yourdomain.com,支持多域名添加);/home/wwwroot/yourdomain.com);通过acme.sh工具生成ECC证书(更轻量、安全):
执行命令:/usr/local/acme.sh --server zerossl --issue -d yourdomain.com -d www.yourdomain.com --keylength ec-256 -w /home/wwwroot/yourdomain.com(替换为你的域名和网站根目录)。
等待几分钟,证书会自动生成在/root/.acme.sh/yourdomain.com_ecc/目录下(包含fullchain.cer证书文件和yourdomain.com.key私钥)。
找到对应网站的Nginx虚拟主机配置文件(通常位于/usr/local/nginx/conf/vhost/yourdomain.com.conf),修改或添加以下内容:
server {
listen 443 ssl; # 开启HTTPS监听端口
server_name yourdomain.com www.yourdomain.com; # 绑定域名
# 指向证书文件(路径需与生成证书时的路径一致)
ssl_certificate /usr/local/nginx/conf/ssl/yourdomain.com_ecc/fullchain.cer;
ssl_certificate_key /usr/local/nginx/conf/ssl/yourdomain.com_ecc/yourdomain.com.key;
# 其他配置(如root目录、PHP处理等)
root /home/wwwroot/yourdomain.com;
index index.php index.html;
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/tmp/php-cgi.sock; # 根据PHP版本调整sock路径
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
注意:若使用Let’s Encrypt自动配置,无需手动修改,工具会自动更新配置文件。
配置完成后,执行以下命令使配置生效:
lnmp reload;systemctl reload nginx(适用于systemd系统)。https://yourdomain.com,若地址栏显示绿色锁形图标,说明证书安装成功。为强制用户使用HTTPS,避免HTTP明文传输,可在Nginx配置文件的server块(监听80端口)中添加重定向规则:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
return 301 https://$server_name$request_uri; # 永久重定向到HTTPS
}
修改后重新加载Nginx即可。
以上步骤覆盖了LNMP环境下SSL证书安装的全流程,具体命令和路径可能因LNMP版本、Linux发行版略有差异,建议参考对应工具的官方文档调整。