Кэширование nginx и вход в админку сайта

R
На сайте с 07.04.2013
Offline
44
2024

Приветствую! Прошу помочь доработать конфиг nginx, чтобы работало кэширование страниц и была возможность входить в админку, в теперешнем виде войти не получается.

http {

.....
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=256m inactive=30m use_temp_path=off;
.....
server {
listen 80;
server_name site.ru;
rewrite ^(.*)$ https://$server_name$1 permanent;
}
server {
listen 443 ssl default_server;
server_name site.ru;
ssl_certificate ...
ssl_certificate_key ...
ssl_trusted_certificate ...

location / {
proxy_pass http://127.0.0.1:80/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;

proxy_cache my_cache;
proxy_cache_valid 404 502 503 1m;
proxy_cache_valid any 1h;
proxy_cache_key "$request_method|$http_if_modified_since|$http_if_none_match|$host|$request_uri";
proxy_hide_header "Set-Cookie";
proxy_ignore_headers "Cache-Control" "Expires";
# if ($cookie_session) { set $do_not_cache 1; }
# if ($request_uri ~* "administrator") { set $do_not_cache 1; }
# proxy_cache_bypass $do_not_cache;
# proxy_no_cache $do_not_cache;
}

CMS Joomla, в пути к панели администратора "administrator", последние 4 строки кода не дают результата.

Skom
На сайте с 02.12.2006
Offline
166
#1

Для любого локейшена можно делать

proxy_cache off;

Cras amet qui numquam amavit quique amavit cras amet
R
На сайте с 07.04.2013
Offline
44
#2
Skom:
Для любого локейшена можно делать
proxy_cache off;

А как правильно прописать location к административной части сайта, где в ссылке присутствует "administrator"?

Skom
На сайте с 02.12.2006
Offline
166
#3
Roinmana:
А как правильно прописать location к административной части сайта, где в ссылке присутствует "administrator"?

Я понятия не имею как устроена джумла и что там у вас стоит после nginx, но вот если в лоб, то


location ~ ^/administrator{
proxy_cache off;
}
Andreyka
На сайте с 19.02.2005
Offline
822
#4

Почитайте эту статью.

Не стоит плодить сущности без необходимости
R
На сайте с 07.04.2013
Offline
44
#5

Благодаря Skom и Andreyka подобрал рабочее решение:

location /administrator {
proxy_cache off;
proxy_pass http://127.0.0.1:8080;
proxy_redirect https://yorsite.ru:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
Andreyka:
Почитайте эту статью.

Видимо, там не полный мануал. В директиве proxy_pass используется сервер, который нигде не описан. Должна быть еще директива upstream с описанием

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий