在Ubuntu LNMP(Linux, Nginx, MySQL, PHP)环境中配置缓存系统可以显著提高网站性能。以下是配置Nginx和PHP-FPM缓存的步骤:
首先,确保你已经安装了Nginx。如果没有安装,可以使用以下命令进行安装:
sudo apt update
sudo apt install nginx
创建一个目录用于存储缓存文件:
sudo mkdir -p /var/cache/nginx
编辑Nginx配置文件(通常位于/etc/nginx/nginx.conf
或/etc/nginx/sites-available/default
),添加以下内容:
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://backend;
proxy_cache my_cache;
proxy_cache_valid 200 302 10m;
proxy_cache_valid 404 1m;
add_header X-Proxy-Cache $upstream_cache_status;
}
}
upstream backend {
server unix:/var/run/php/php7.4-fpm.sock; # 根据你的PHP版本调整
# 或者使用IP地址和端口
# server 127.0.0.1:9000;
}
}
OPcache是PHP的一个内置扩展,可以显著提高PHP脚本的执行速度。确保你的PHP版本支持OPcache,并安装它:
sudo apt install php7.4-opcache
编辑PHP-FPM配置文件(通常位于/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
完成配置后,重启Nginx和PHP-FPM服务以应用更改:
sudo systemctl restart nginx
sudo systemctl restart php7.4-fpm
你可以通过访问你的网站并检查响应头中的X-Proxy-Cache
字段来验证Nginx缓存是否生效。如果一切配置正确,你应该会看到类似以下的响应头:
X-Proxy-Cache: HIT
这表示请求已经被缓存。
通过以上步骤,你可以在Ubuntu LNMP环境中成功配置Nginx和PHP-FPM的缓存系统,从而提高网站的性能和响应速度。