linux

LNMP环境下如何实现SSL卸载

小樊
35
2025-08-01 00:14:54
栏目: 云计算

在LNMP(Linux, Nginx, MySQL, PHP)环境下实现SSL卸载,通常是指将SSL加密和解密的任务从后端服务器(如PHP-FPM)转移到前端代理服务器(如Nginx)。这样可以减轻后端服务器的负担,提高性能。以下是实现SSL卸载的步骤:

1. 安装和配置Nginx

首先,确保你已经安装了Nginx,并且可以正常运行。

sudo apt update
sudo apt install nginx

2. 获取SSL证书

你可以从Let’s Encrypt或其他证书颁发机构获取SSL证书。假设你已经有一个SSL证书文件fullchain.pem和一个私钥文件privkey.pem

3. 配置Nginx

编辑Nginx配置文件,通常位于/etc/nginx/sites-available/default/etc/nginx/nginx.conf

server {
    listen 443 ssl;
    server_name yourdomain.com;

    ssl_certificate /path/to/fullchain.pem;
    ssl_certificate_key /path/to/privkey.pem;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    location / {
        proxy_pass http://localhost:8080; # 假设PHP-FPM运行在8080端口
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

server {
    listen 80;
    server_name yourdomain.com;

    location / {
        return 301 https://$host$request_uri;
    }
}

4. 重启Nginx

保存配置文件后,重启Nginx以应用更改。

sudo systemctl restart nginx

5. 配置PHP-FPM

确保PHP-FPM运行在非SSL端口(例如8080)。编辑PHP-FPM配置文件,通常位于/etc/php/7.x/fpm/pool.d/www.conf

listen = 127.0.0.1:8080

然后重启PHP-FPM服务。

sudo systemctl restart php7.x-fpm

6. 测试配置

打开浏览器,访问你的域名,确保HTTPS连接正常,并且请求被正确转发到PHP-FPM。

注意事项

通过以上步骤,你可以在LNMP环境下实现SSL卸载,提高系统的整体性能和安全性。

0
看了该问题的人还看了