У меня есть следующий конфигурационный файл niginx:
server {
listen 80;
server_name pajilleros.com www.pajilleros.com;
access_log off;
location / {
root /home/website/public_html;
index /silex/web/index.php;
try_files $uri $uri/ /rewrite.php?$args;
}
# Rewrite to another folder
location /themes {
rewrite ^/themes/(.*) /silex/web/themes/$1;
}
#Rewrite of page
location /some-page {
try_files $uri $uri/ /silex/web/index.php;
}
location /another-page {
try_files $uri $uri/ /silex/web/index.php;
}
#error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
root /home/website/public_html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_buffers 256 16k;
fastcgi_buffer_size 128k;
fastcgi_connect_timeout 5s;
fastcgi_send_timeout 120s;
fastcgi_read_timeout 120s;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
reset_timedout_connection on;
}
}
Я хочу кэшировать страницы / some-page и / another-page как статические 30 секунд, но я знаю только, как сделать кеш с помощью proxy_pass, в этом случае я не использую proxy_pass, только php-fpm.
Я могу это сделать с помощью nginx? или я должен использовать лак как тайник?
Спасибо !
Да, вы можете сделать это с помощью Nginx. Используйте для этого FastCGI cache. Вот один из многих руководств, как это сделать:
https://www.digitalocean.com/community/tutorials/how-to-setup-fastcgi-caching-with-nginx-on-your-vps