Исключить папки из кеширования - PullRequest
0 голосов
/ 03 июля 2018

В Plesk под Дополнительные директивы nginx Я добавил следующие настройки кэша.

location ~* .(jpg|js|css)$ { #shortened
    etag on;
    if_modified_since exact;
    add_header Pragma "public";
    add_header Cache-Control "max-age=31536000, public";
}

Но в wp-admin я переписываю URL этих файлов.
Как исключить wp-admin/* и wp-includes/* из блока выше?

Немного фона, я запускаю мультисайт WordPress в подпапке. так
maildomain.com/wp-admin/stylesheet.css фактически находится в
maildomain.com/wp/wp-admin/stylesheet.css

1 Ответ

0 голосов
/ 04 июля 2018

Вы можете попробовать поэкспериментировать с параметром location перед кэшированием директив, например ::10000

location ^~ /wp-admin/ {
}

location ~* .(jpg|js|css)$ { #shortened
etag on;
if_modified_since exact;
add_header Pragma "public";
add_header Cache-Control "max-age=31536000, public";
}

UPD. Да, проверил это в моей тестовой лаборатории и получил ошибку 403. Я думаю, пустого раздела недостаточно, и некоторые директивы должны быть добавлены явно.

Удалось добавить исключение, как показано ниже:

location ~* "^/(?!wp-admin/|wp-includes/).*\.(jpg|js|css)$" { #shortened
etag on;
if_modified_since exact;
add_header Pragma "public";
add_header Cache-Control "max-age=31536000, public";
}
...