• Как реализовать выборочное кэширование в NGINX?

    @ElevenCalibre Автор вопроса
    Решил проблему таким путем:
    1. Удалил строку с конфига NGINX
    proxy_ignore_headers Expires Cache-Control;
    это убрало игнорирование данных с заголовков цмс

    2. Установил модуль "Server Cache", он в заголовках передает информацию NGINX о том что следует кэшировать, а что запрещено через функции:

    From Cache auto-excluded:

    Back-end
    Logged users
    Virtuemart cart
    RedShop Cart
    eShop Cart (Joomdonation)
    J2Store Cart
    URL contains word 'cart, checkout, register, login, orders'
    POST/PUT/HEAD/DELETE methods (Only in GET cache is activated)
    Custom defined components
    Custom defined views
    Custom defined menus
    Custom defined url/words

    Спасибо всем, кто был не равнодушен помочь. Оставлю это тут, может еще кому-то поможет.
  • Как реализовать выборочное кэширование в NGINX?

    @ElevenCalibre Автор вопроса
    dodo512, спасибо, я так понимаю добавлять это нужно в файл /etc/nginx/conf.d/xxx.xx.xxx.xx.conf так как локации именно там прописаны для конкретного домена? Это должно решить проблему с кэшированием админ. части, а как быть с второй проблемой, когда выдает страницы в обход авторизации, я так понимаю в другой браузер отдает мои куки? но эти директивы должны были бы запрещать подобное:

    proxy_ignore_headers Expires Cache-Control;proxy_hide_header "Set-Cookie";
    proxy_cache_bypass $cookie_session;
    proxy_no_cache $cookie_session;

    # Cache bypass
    map $http_cookie $no_cache {
    default 0;
    ~SESS 1;
    ~wordpress_logged_in 1;
    }
  • Как реализовать выборочное кэширование в NGINX?

    @ElevenCalibre Автор вопроса
    Я открыл два браузера, открыл в них сайт после очистки кэша, оба просят пароль, ввожу пароль в одном, после входа обновляю другой браузер и там просто подгружает страницу обходя авторизацию, это очень неприятный момент...Приходится переключаться в обычный режим (default), но мне действительно нужно кэширование..
  • Как реализовать выборочное кэширование в NGINX?

    @ElevenCalibre Автор вопроса
    ky0,
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
  • Как реализовать выборочное кэширование в NGINX?

    @ElevenCalibre Автор вопроса
    vesta.conf содержит линк на файл, который я прикрепил ниже:
    include /home/admin/conf/web/sitename.com.nginx.conf;

    /home/admin/conf/web/sitename.com.nginx.conf

    server {
    listen xxx.xx.xxx.xx:80;
    server_name sitename.fm www.sitename.com;
    error_log /var/log/httpd/domains/sitename.com.error.log error;

    location / {
    proxy_pass xxx.xx.xxx.xx:8080;
    location ~* ^.+\.(jpeg|jpg|png|gif|bmp|ico|svg|tif|tiff|css|js|htm|html|ttf|otf|webp|woff|txt|csv|rtf|doc|docx|xls|xlsx|ppt|pptx|odf|odp|ods|odt|pdf|psd|ai|eot|eps|ps|zip|tar|tgz|gz|rar|bz2|7z|aac|m4a|mp3|mp4|ogg|wav|wma|3gp|avi|flv|m4v|mkv|mov|mpeg|mpg|wmv|exe|iso|dmg|swf)$ {
    root /home/admin/web/sitename.com/public_html;
    access_log /var/log/httpd/domains/sitename.com.log combined;
    access_log /var/log/httpd/domains/sitename.com.bytes bytes;
    expires max;
    try_files $uri @fallback;
    }
    }

    location /error/ {
    alias /home/admin/web/sitename.com/document_errors/;
    }

    location @fallback {
    proxy_pass xxx.xx.xxx.xx:8080;
    }

    location ~ /\.ht {return 404;}
    location ~ /\.svn/ {return 404;}
    location ~ /\.git/ {return 404;}
    location ~ /\.hg/ {return 404;}
    location ~ /\.bzr/ {return 404;}

    include /home/admin/conf/web/nginx.sitename.com.conf*;
    }


    /etc/nginx/conf.d/xxx.xx.xxx.xx.conf

    server {
    listen xxx.xx.xxx.xx:80 default;
    server_name _;
    #access_log /var/log/nginx/xxx.xx.xxx.xx.log main;
    location / {
    proxy_pass xxx.xx.xxx.xx:8080;
    }
    }


    proxy_cache_path /var/cache/nginx/sitename.com levels=2 keys_zone=sitename.com:10m inactive=60m max_size=512m;


    status.conf

    server {
    listen 127.0.0.1:8084 default;
    server_name _;
    server_name_in_redirect off;
    location / {
    stub_status on;
    access_log off;
    }
    }