Я настраиваю сайт Active Collab на своем новом сервере. Настройка как ниже
Интернет> ---> лак ----> apache
Но я не могу войти на сайт через varnish cache .. Но я могу войти на сайт через apache.
Вот мой файл VCL
backend default { .host = "localhost"; .port = "8080"; }
acl purge { "localhost"; }
sub vcl_recv { if (req.request == "PURGE") { if (!client.ip ~ purge) { error 405 "Not allowed."; } return(lookup); }
if (req.url ~ "^/$") { unset req.http.cookie; } }
sub vcl_hit { if (req.request == "PURGE") { set obj.ttl = 0s; error 200 "Purged."; } }
sub vcl_miss { if (req.request == "PURGE") { error 404 "Not in cache."; }
if (!(req.url ~ "wp-(login|admin)")) { unset req.http.cookie; }
if (req.url ~ "^/[^?]+.(jpeg|jpg|png|gif|ico|js|css|txt|gz|zip|lzma|bz2|tgz|tbz|html|htm)(\?.|)$") {
unset req.http.cookie;
set req.url = regsub(req.url, "\?.$", "");
}
if (req.url ~ "^/$") { unset req.http.cookie; } }
sub vcl_fetch { if (req.url ~ "^/$") { unset beresp.http.set-cookie; }
if (!(req.url ~ "wp-(login|admin)")) { unset beresp.http.set-cookie; }}
Когда я пытаюсь войти через varnish, меня перенаправляют обратно на страницу входа. Если я введу неправильный пароль, он попросит ввести правильный пароль.
Наконец-то я нашел решение.
Я добавил следующий код в раздел «sub vcl_fetch».
if (beresp.http.set-cookie ~ "sessionid" || beresp.http.set-cookie ~ "csrftoken") {
return (pass);
} else {
return (deliver);
}
Теперь я могу войти через лак !!!
Я нашел это решение из этого сайт.
Спасибо,
Арун С