Welcome! Log In Create A New Profile

Advanced

Re: Как очистить кэш Nginx

Lystopad Aleksandr
January 07, 2017 12:22PM
Hello, Seriyyy95!

On Fri, Jan 06, 2017 at 11:21:14AM -0500
nginx-forum@forum.nginx.org wrote about "Re: Как очистить кэш Nginx":
> Так и не смог разобраться. Стиль обрабатывается здесь:
>
> location ~ \.(css|htc|less|js|js2|js3|js4)$ {
> access_log /var/log/nginx/access_css.log;
> expires -1s;
> add_header Pragma "public";
> add_header Cache-Control "max-age=-1, public";
> add_header X-Powered-By "W3 Total Cache/0.9.5.1";
> try_files $uri $uri/ $uri.html /index.php?$args;
> }

Погодите, стиль обрабатывается тут, но каким образом?
У вас try_files с несколькими вариантами поиска.

Какой из них срабатывает?
Чтобы разобраться, вы можете добавить $document_root в вывод лога (log_format)
и делать тестовые запросы к стилю и смотреть. Добавить можно и еще других
переменных в вывод лога, они помогут вам. Также, можете включить
дебаг в error_log для отдельного location и разбираться в нем что происходит для
вашего проблемного стиля.

В идеале, ваш стиль должен отдаваться просто с диска, так правильно
и быстро. Но, возможно, он отдается пхп-скриптом.

Я почти уверен, что проблема в WP total cache .

> Если добавить access log, то все стили исправно пишутся в лог файл. Дальше
> php обрабатывается здесь:
>
> location @php {
> access_log /var/log/nginx/access_css3.log;
>
> fastcgi_index index.php;
> fastcgi_param PHP_ADMIN_VALUE "sendmail_path =
> /usr/sbin/sendmail -t -i -f admin@losst.ru";
> fastcgi_pass unix:/var/www/php-fpm/losst.sock;
> fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
> try_files $uri =404;
> include fastcgi_params;
> }
>
> Причем в получившемся логе строк к запросами к css нет. Значит PHP не
> кэширует? Тогда кто? Я не понимаю. В первый раз я не прикрепил главный
> конфиг /etc/nginx/nginx.conf. Может в нем дело:
>
>
> user apache;
> worker_processes 1;
>
> error_log /var/log/nginx/error.log warn;
> pid /var/run/nginx.pid;
>
>
> events {
> worker_connections 1024;
> }
>
>
> http {
> include /etc/nginx/mime.types;
> default_type application/octet-stream;
>
> log_format main '$remote_addr - $remote_user [$time_local] "$request"
> '
> '$status $body_bytes_sent "$http_referer" '
> '"$http_user_agent" "$http_x_forwarded_for"';
>
> access_log /var/log/nginx/access.log main;
>
> sendfile on;
> #tcp_nopush on;
>
> keepalive_timeout 65;
>
> #gzip on;
>
> gzip on;
> gzip_min_length 1100;
> gzip_buffers 4 32k;
> gzip_vary on;
> gzip_types text/css text/plain application/json
> application/x-javascript text/xml application/xml application/xml+rss
> text/javascript application/javascript text/x-js;
> gzip_proxied any;
> include /etc/nginx/conf.d/*.conf;
> include /etc/nginx/vhosts/*/*.conf;
> server {
> server_name localhost;
> disable_symlinks if_not_owner;
> listen 80;
> include /etc/nginx/vhosts-includes/*.conf;
> location @fallback {
> error_log /dev/null crit;
> proxy_pass http://127.0.0.1:8080;
> proxy_redirect http://127.0.0.1:8080 /;
> proxy_set_header Host $host;
> proxy_set_header X-Forwarded-For
> $proxy_add_x_forwarded_for;
> proxy_set_header X-Forwarded-Proto $scheme;
> access_log /var/log/nginx/access_proxy.log ;
> }
> }
> client_max_body_size 128m;
> }
>
> Лог access_proxy пуст.

Значит в location @fallback не попадают запросы.

По поводу кучи разных инклудов советую почитать что
об этом думает автор nginx Игорь Сысоев:
https://habrahabr.ru/company/oleg-bunin/blog/313666/


Еще раз, вам лучше добиться того, чтобы статический объект отдавался простым чтением
с диска, а не в результате обработки скрипта.

Попробуйте сделать как-то так и посмотреть результат:

location = /style.css {
root /directory/with/style;
expires -1;
access_log /log-dir/my-test.log;
}

Удачи.
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Как очистить кэш Nginx

Seriyyy95 January 04, 2017 01:03PM

Re: Как очистить кэш Nginx

Anton Gorlov January 04, 2017 01:52PM

Re: Как очистить кэш Nginx

Seriyyy95 January 04, 2017 01:55PM

Re: Как очистить кэш Nginx

SK January 04, 2017 02:12PM

Re: Как очистить кэш Nginx

Seriyyy95 January 04, 2017 02:19PM

Re: Как очистить кэш Nginx

Lystopad Aleksandr January 04, 2017 03:16PM

Re: Как очистить кэш Nginx

Seriyyy95 January 06, 2017 11:21AM

Re: Как очистить кэш Nginx

Dmitry Ivanov January 06, 2017 12:02PM

Re: Как очистить кэш Nginx

Lystopad Aleksandr January 07, 2017 12:22PM

Re: Как очистить кэш Nginx

Seriyyy95 January 08, 2017 05:42AM

Re: Как очистить кэш Nginx

Lystopad Aleksandr January 08, 2017 08:16AM

Re: Как очистить кэш Nginx

Seriyyy95 January 08, 2017 08:33AM

Re: Как очистить кэш Nginx

Seriyyy95 January 08, 2017 10:17AM

Re: Как очистить кэш Nginx

Lystopad Aleksandr January 08, 2017 11:56AM

Re: Как очистить кэш Nginx

vitcool January 04, 2017 04:44PM

Re: Как очистить кэш Nginx

Seriyyy95 January 07, 2017 07:19AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 58
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready