debian

LNMP在Debian上的缓存设置

小樊
41
2025-06-03 10:04:13
栏目: 智能运维

在Debian系统上配置LNMP(Linux, Nginx, MySQL, PHP)的缓存通常涉及到Nginx的反向代理缓存和PHP的OPcache。以下是详细的配置步骤:

1. 安装必要的软件包

首先,确保你的Debian系统已经安装了Nginx、MySQL和PHP。如果没有安装,可以使用以下命令进行安装:

sudo apt update
sudo apt install nginx mysql-server php-fpm php-mysql php-opcache

2. 配置Nginx反向代理缓存

启用缓存模块

确保Nginx编译时启用了缓存模块。你可以通过以下命令检查:

nginx -V 2>&1 | grep --color=always -o with-http_cache_module

如果输出中包含 with-http_cache_module,则表示已启用。

配置缓存

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

sudo nano /etc/nginx/sites-available/default

http 块中添加缓存相关的配置:

http {
    # 缓存路径
    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;

    server {
        listen 80;
        server_name example.com;

        location / {
            proxy_pass http://unix:/var/run/php/php7.4-fpm.sock; # 根据你的PHP版本调整
            proxy_cache my_cache;
            proxy_cache_valid 200 302 10m;
            proxy_cache_valid 404 1m;
            add_header X-Proxy-Cache $upstream_cache_status;
        }

        location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
            expires 30d;
            add_header Cache-Control "public";
        }
    }
}

重启服务

配置完成后,重启Nginx服务以应用更改:

sudo systemctl restart nginx

3. 配置PHP OPcache

安装PHP OPcache

如果你使用的是PHP 7.2及以上版本,OPcache已经包含在内。如果没有,可以使用以下命令安装:

sudo apt install php-opcache

配置OPcache

编辑PHP配置文件,通常位于 /etc/php/7.4/fpm/php.ini(根据你的PHP版本调整路径)。

sudo nano /etc/php/7.4/fpm/php.ini

添加或修改以下配置:

[opcache]
zend_extension=opcache.so
opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1

保存并退出编辑器,然后重启PHP-FPM服务:

sudo systemctl restart php7.4-fpm

4. 验证缓存

访问你的网站并检查响应头中的 X-Proxy-Cache 字段,以确认缓存是否生效。例如,使用 curl 命令:

curl -I http://example.com

如果响应头中包含 X-Proxy-Cache: HIT,则表示缓存命中;如果是 MISS,则表示缓存未命中。

5. 其他优化建议

通过以上步骤,你可以在Debian上配置一个基本的LNMP缓存系统,从而提高网站的性能和响应速度。

0
看了该问题的人还看了